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