44b51f2c894fd5b9d090cdfdbd7a3f12a5bce49c
[jalview.git] / test / jalview / gui / StructureChooserTest.java
1 package jalview.gui;
2
3 import static org.testng.AssertJUnit.assertEquals;
4 import static org.testng.AssertJUnit.assertTrue;
5
6 import jalview.datamodel.DBRefEntry;
7 import jalview.datamodel.PDBEntry;
8 import jalview.datamodel.Sequence;
9 import jalview.datamodel.SequenceI;
10
11 import java.util.Vector;
12
13 import org.testng.annotations.AfterMethod;
14 import org.testng.annotations.BeforeMethod;
15 import org.testng.annotations.Test;
16
17 public class StructureChooserTest
18 {
19   Sequence seq;
20
21   @BeforeMethod
22   public void setUp() throws Exception
23   {
24     seq = new Sequence("PDB|4kqy|4KQY|A", "ABCDEFGHIJKLMNOPQRSTUVWXYZ", 1,
25             26);
26     seq.setDatasetSequence(seq);
27     for (int x = 1; x < 5; x++)
28     {
29       DBRefEntry dbRef = new DBRefEntry();
30       dbRef.setAccessionId("XYZ_" + x);
31       seq.addDBRef(dbRef);
32     }
33
34     PDBEntry dbRef = new PDBEntry();
35     dbRef.setId("1tim");
36
37     Vector<PDBEntry> pdbIds = new Vector<PDBEntry>();
38     pdbIds.add(dbRef);
39
40     seq.setPDBId(pdbIds);
41   }
42
43   @AfterMethod
44   public void tearDown() throws Exception
45   {
46     seq = null;
47   }
48
49
50
51   @Test
52   public void buildQueryTest()
53   {
54     String query = StructureChooser.buildQuery(seq);
55     System.out.println(">>>>>>>>>> query : " + query);
56     assertEquals(
57             "4kqy OR text:1tim OR text:XYZ_1 OR text:XYZ_2 OR text:XYZ_3 OR text:XYZ_4",
58             query);
59   }
60
61   @Test
62   public void populateFilterComboBoxTest()
63   {
64     SequenceI[] selectedSeqs = new SequenceI[]
65     { seq };
66     StructureChooser sc = new StructureChooser(selectedSeqs, seq,
67             null);
68     sc.populateFilterComboBox();
69     int optionsSize = sc.getCmbFilterOption().getItemCount();
70     assertEquals(3, optionsSize); // if structures are not discovered then don't
71                                   // populate filter options
72
73     sc.setStructuresDiscovered(true);
74     sc.populateFilterComboBox();
75     optionsSize = sc.getCmbFilterOption().getItemCount();
76     assertTrue(optionsSize > 3); // if structures are found, filter options
77                                  // should be populated
78   }
79
80   @Test
81   public void fetchStructuresInfoTest()
82   {
83     SequenceI[] selectedSeqs = new SequenceI[]
84     { seq };
85     StructureChooser sc = new StructureChooser(selectedSeqs, seq, null);
86     sc.fetchStructuresMetaData();
87     assertTrue(sc.getDiscoveredStructuresSet() != null);
88     assertTrue(sc.getDiscoveredStructuresSet().size() > 0);
89
90   }
91 }