Merge branch 'develop' into trialMerge
[jalview.git] / test / jalview / analysis / CrossRefTest.java
index 81ec443..6417c91 100644 (file)
@@ -42,8 +42,10 @@ import jalview.util.DBRefUtils;
 import jalview.util.MapList;
 import jalview.ws.SequenceFetcher;
 import jalview.ws.SequenceFetcherFactory;
+import jalview.ws.params.InvalidArgumentException;
 
 import java.util.ArrayList;
+import java.util.Arrays;
 import java.util.List;
 
 import org.testng.annotations.AfterClass;
@@ -73,28 +75,28 @@ public class CrossRefTest
     DBRefEntry ref8 = new DBRefEntry("PFAM", "1", "A123");
     // ENSEMBL is a source of either dna or protein sequence data
     DBRefEntry ref9 = new DBRefEntry("ENSEMBL", "1", "A123");
-    DBRefEntry[] refs = new DBRefEntry[] { ref1, ref2, ref3, ref4, ref5,
-        ref6, ref7, ref8, ref9 };
+    List<DBRefEntry> refs = Arrays.asList(new DBRefEntry[] { ref1, ref2, ref3, ref4, ref5,
+            ref6, ref7, ref8, ref9 });
 
     /*
      * Just the DNA refs:
      */
-    DBRefEntry[] found = DBRefUtils.selectDbRefs(true, refs);
-    assertEquals(4, found.length);
-    assertSame(ref5, found[0]);
-    assertSame(ref6, found[1]);
-    assertSame(ref7, found[2]);
-    assertSame(ref9, found[3]);
+    List<DBRefEntry> found = DBRefUtils.selectDbRefs(true, refs);
+    assertEquals(4, found.size());
+    assertSame(ref5, found.get(0));
+    assertSame(ref6, found.get(1));
+    assertSame(ref7, found.get(2));
+    assertSame(ref9, found.get(3));
 
     /*
      * Just the protein refs:
      */
     found = DBRefUtils.selectDbRefs(false, refs);
-    assertEquals(4, found.length);
-    assertSame(ref1, found[0]);
-    assertSame(ref2, found[1]);
-    assertSame(ref4, found[2]);
-    assertSame(ref9, found[3]);
+    assertEquals(4, found.size());
+    assertSame(ref1, found.get(0));
+    assertSame(ref2, found.get(1));
+    assertSame(ref4, found.get(2));
+    assertSame(ref9, found.get(3));
   }
 
   /**
@@ -141,7 +143,7 @@ public class CrossRefTest
      * and others to dna coding databases
      */
     sources.clear();
-    seq.setDBRefs(null);
+       seq.setDBRefs(null);
     seq.addDBRef(new DBRefEntry("UNIPROT", "0", "A1234"));
     seq.addDBRef(new DBRefEntry("EMBLCDS", "0", "E2347"));
     SequenceI seq2 = new Sequence("Seq2", "MGKYQARLSS");
@@ -280,7 +282,7 @@ public class CrossRefTest
     CrossRef testee = new CrossRef(al.getSequencesArray(), al);
     AlignedCodonFrame acf = new AlignedCodonFrame();
     boolean found = testee.searchDataset(true, dna1, dbref, result, acf,
-            true);
+            true, DBRefUtils.SEARCH_MODE_FULL);
     assertFalse(found);
     assertTrue(result.isEmpty());
     assertTrue(acf.isEmpty());
@@ -291,7 +293,7 @@ public class CrossRefTest
     acf = new AlignedCodonFrame();
     dbref = new DBRefEntry("UNIPROT", "0", "Q9ZTS2");
     found = testee.searchDataset(!dna1.isProtein(), dna1, dbref, result,
-            acf, false); // search dataset with a protein xref from a dna
+            acf, false, DBRefUtils.SEARCH_MODE_FULL); // search dataset with a protein xref from a dna
                          // sequence to locate the protein product
     assertTrue(found);
     assertEquals(1, result.size());
@@ -305,7 +307,7 @@ public class CrossRefTest
     acf = new AlignedCodonFrame();
     dbref = new DBRefEntry("UNIPROT", "0", "Q9ZTS2");
     found = testee.searchDataset(!pep1.isProtein(), pep1, dbref, result,
-            acf, false); // search dataset with a protein's direct dbref to
+            acf, false, DBRefUtils.SEARCH_MODE_FULL); // search dataset with a protein's direct dbref to
                          // locate dna sequences with matching xref
     assertTrue(found);
     assertEquals(1, result.size());
@@ -707,30 +709,31 @@ public class CrossRefTest
     /*
      * verify mappings added to Uniprot-to-EMBL dbrefs
      */
-    Mapping mapping = p0ce19.getDBRefs()[0].getMap();
+    Mapping mapping = p0ce19.getDBRefs().get(0).getMap();
     assertSame(j03321, mapping.getTo());
-    mapping = p0ce19.getDBRefs()[1].getMap();
+    mapping = p0ce19.getDBRefs().get(1).getMap();
     assertSame(x06707, mapping.getTo());
-    mapping = p0ce20.getDBRefs()[0].getMap();
+    mapping = p0ce20.getDBRefs().get(0).getMap();
     assertSame(j03321, mapping.getTo());
-    mapping = p0ce20.getDBRefs()[1].getMap();
+    mapping = p0ce20.getDBRefs().get(1).getMap();
     assertSame(x06707, mapping.getTo());
 
     /*
      * verify dbrefs on EMBL are mapped to alignment seqs
      */
-    assertSame(p0ce19, j03321.getDBRefs()[0].getMap().getTo());
-    assertSame(p0ce20, j03321.getDBRefs()[1].getMap().getTo());
-    assertSame(p0ce19, x06707.getDBRefs()[0].getMap().getTo());
-    assertSame(p0ce20, x06707.getDBRefs()[1].getMap().getTo());
+    
+    assertSame(p0ce19, j03321.getDBRefs().get(0).getMap().getTo());
+    assertSame(p0ce20, j03321.getDBRefs().get(1).getMap().getTo());
+    assertSame(p0ce19, x06707.getDBRefs().get(0).getMap().getTo());
+    assertSame(p0ce20, x06707.getDBRefs().get(1).getMap().getTo());
 
     /*
      * verify new dbref on EMBL dbref mapping is copied to the
      * original Uniprot sequence
      */
-    assertEquals(4, p0ce19.getDBRefs().length);
-    assertEquals("PIR", p0ce19.getDBRefs()[3].getSource());
-    assertEquals("S01875", p0ce19.getDBRefs()[3].getAccessionId());
+    assertEquals(4, p0ce19.getDBRefs().size());
+    assertEquals("PIR", p0ce19.getDBRefs().get(3).getSource());
+    assertEquals("S01875", p0ce19.getDBRefs().get(3).getAccessionId());
   }
 
   @Test(groups = "Functional")