1 package jalview.ext.rbvi.chimera;
3 import static org.junit.Assert.assertTrue;
5 import org.junit.AfterClass;
6 import org.junit.BeforeClass;
9 import jalview.datamodel.PDBEntry;
10 import jalview.datamodel.SequenceI;
11 import jalview.gui.AlignFrame;
12 import jalview.gui.StructureViewer;
13 import jalview.gui.StructureViewer.ViewerType;
14 import jalview.io.FormatAdapter;
16 public class JalviewChimeraView
20 * @throws java.lang.Exception
23 public static void setUpBeforeClass() throws Exception
25 jalview.bin.Jalview.main(new String[]
26 { "-noquestionnaire -nonews -props", "test/src/jalview/ext/rbvi/chimera/testProps.jvprops" });
30 * @throws java.lang.Exception
33 public static void tearDownAfterClass() throws Exception
37 jalview.gui.Desktop.instance.closeAll_actionPerformed(null);
40 // ignore NullPointerException thrown by JMol
47 public void testSingleSeqView()
49 String inFile = "examples/1gaq.txt";
50 AlignFrame af = new jalview.io.FileLoader().LoadFileWaitTillLoaded(
51 inFile, FormatAdapter.FILE);
52 assertTrue("Didn't read input file " + inFile, af != null);
53 for (SequenceI sq:af.getViewport().getAlignment().getSequences())
55 SequenceI dsq=sq.getDatasetSequence();
56 while (dsq.getDatasetSequence()!=null)
58 dsq=dsq.getDatasetSequence();
60 if (dsq.getPDBId()!=null && dsq.getPDBId().size()>0) {
61 for (int q=0;q<dsq.getPDBId().size();q++)
63 new StructureViewer(af.getViewport()
64 .getStructureSelectionManager()).viewStructures(
66 af.getCurrentView().getAlignPanel(),
67 new PDBEntry[] { (PDBEntry)dsq.getPDBId().elementAt(q) },
68 new SequenceI[][] { new SequenceI[] { sq } });
70 new StructureViewer(af.getViewport()
71 .getStructureSelectionManager()).viewStructures(
73 af.getCurrentView().getAlignPanel(),
74 new PDBEntry[] { (PDBEntry)dsq.getPDBId().elementAt(q) },
75 new SequenceI[][] { new SequenceI[] { sq } });
76 // todo: break here means only once through this loop?
84 // Thread.sleep(200000);
85 // } catch (InterruptedException q)