X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;ds=sidebyside;f=test%2Fjalview%2Fws%2FSequenceFetcherTest.java;h=c643d6baa88f457e26b3f4c4d0c9870042d74ded;hb=56d72101b0584635cf539d5413db27abc8deb575;hp=0b501ee841f35a44dc3283c02f4c05ef893a9040;hpb=b483c2012e40cab4b38f650dc049c94efe7e27c2;p=jalview.git diff --git a/test/jalview/ws/SequenceFetcherTest.java b/test/jalview/ws/SequenceFetcherTest.java index 0b501ee..c643d6b 100644 --- a/test/jalview/ws/SequenceFetcherTest.java +++ b/test/jalview/ws/SequenceFetcherTest.java @@ -30,10 +30,14 @@ import jalview.ws.seqfetcher.ASequenceFetcher; import jalview.ws.seqfetcher.DbSourceProxy; import java.util.Enumeration; +import java.util.HashMap; import java.util.List; +import java.util.Map; import java.util.Vector; +import org.testng.Assert; import org.testng.annotations.BeforeClass; +import org.testng.annotations.Test; public class SequenceFetcherTest { @@ -45,10 +49,36 @@ public class SequenceFetcherTest JvOptionPane.setMockResponse(JvOptionPane.CANCEL_OPTION); } + @Test(groups = "Functional") + public void testNoDuplicatesInFetchDbRefs() + { + Map> seen = new HashMap<>(); + jalview.ws.SequenceFetcher sfetcher = new jalview.ws.SequenceFetcher(); + String dupes = ""; + // for (String src : sfetcher.getOrderedSupportedSources()) + for (String src : sfetcher.getNonAlignmentSources()) + { + List seenitem = seen.get(src); + if (seenitem != null) + { + dupes += (dupes.length() > 0 ? "," : "") + src; + } + else + { + seen.put(src, sfetcher.getSourceProxy(src)); + } + } + if (dupes.length() > 0) + { + Assert.fail("Duplicate sources : " + dupes); + } + } + /** * simple run method to test dbsources. * * @param argv + * @j2sIgnore */ public static void main(String[] argv) { @@ -146,23 +176,24 @@ public class SequenceFetcherTest System.out.println("Type: " + source); SequenceI[] prod = crossRef.findXrefSequences(source, dna) .getSequencesArray(); - System.out.println("Found " - + ((prod == null) ? "no" : "" + prod.length) - + " products"); + System.out.println( + "Found " + ((prod == null) ? "no" : "" + prod.length) + + " products"); if (prod != null) { for (int p = 0; p < prod.length; p++) { - System.out.println("Prod " + p + ": " - + prod[p].getDisplayId(true)); + System.out.println( + "Prod " + p + ": " + prod[p].getDisplayId(true)); } } } } else { - noProds.addElement((dna ? new Object[] { al, al } - : new Object[] { al })); + noProds.addElement( + (dna ? new Object[] + { al, al } : new Object[] { al })); } } @@ -236,8 +267,8 @@ public class SequenceFetcherTest // present) for (int p = 0; p < prod.length; p++) { - System.out.println("Prod " + p + ": " - + prod[p].getDisplayId(true)); + System.out.println( + "Prod " + p + ": " + prod[p].getDisplayId(true)); } } }