JAL-2316 Restructure identifiers.org download
[jalview.git] / test / jalview / urls / CustomUrlProviderTest.java
index 35ec5ff..52b3fcd 100644 (file)
@@ -40,6 +40,9 @@ public class CustomUrlProviderTest
           + "TEST2|http://address/$SEQUENCE_ID$|SRS|"
           + "http://theSRSlink/$SEQUENCE_ID$";
 
+  private static final String unselectedList = "NON1|http://x/y/$DB_ACCESSION$|"
+          + "NON2|http://a/b/c/$DB_ACCESSION";
+
   private static final HashMap<String, String> urlMap = new HashMap<String, String>()
   {
     {
@@ -50,15 +53,29 @@ public class CustomUrlProviderTest
     }
   };
   
+  private static final HashMap<String, String> unselUrlMap = new HashMap<String, String>()
+  {
+    {
+      put("NON1", "http://x/y/$DB_ACCESSION$");
+      put("NON2", "http://a/b/c/$DB_ACCESSION");
+    }
+  };
+
   private static final String[] dlinks = {
       "TEST|http://someurl.blah/$DB_ACCESSION$",
       "ANOTHER|http://test/t$SEQUENCE_ID$",
       "TEST2|http://address/$SEQUENCE_ID$",
  UrlConstants.DEFAULT_STRING };
 
+  private static final String[] unselDlinks = {
+      "NON1|http://x/y/$DB_ACCESSION$", "NON2|http://a/b/c/$DB_ACCESSION" };
+
   private static final Vector<String> displayLinks = new Vector<String>(
           Arrays.asList(dlinks));
 
+  private static final Vector<String> unselDisplayLinks = new Vector<String>(
+          Arrays.asList(unselDlinks));
+
   private static final String[] dlinks2 = { "a|http://x.y.z/$SEQUENCE_ID$" };
 
   private static final Vector<String> displayLinks2 = new Vector<String>(
@@ -80,7 +97,8 @@ public class CustomUrlProviderTest
   @Test(groups = { "Functional" })
   public void testDefaultUrl()
   {
-    UrlProviderI customProv = new CustomUrlProvider(cachedList);
+    UrlProviderI customProv = new CustomUrlProvider(cachedList,
+            unselectedList);
     
     // default url can be set
     assertTrue(customProv.setDefaultUrl("ANOTHER"));
@@ -114,22 +132,31 @@ public class CustomUrlProviderTest
   public void testUrlLinks()
   {
     // creation from cached url list works + old links upgraded
-    UrlProviderI customProv = new CustomUrlProvider(cachedList);
+    UrlProviderI customProv = new CustomUrlProvider(cachedList,
+            unselectedList);
     assertTrue(displayLinks.containsAll(customProv.getLinksForMenu()));
 
     // creation from map works + old links upgraded
-    UrlProviderI customProv2 = new CustomUrlProvider(urlMap);
+    UrlProviderI customProv2 = new CustomUrlProvider(urlMap, unselUrlMap);
     assertTrue(displayLinks.containsAll(customProv2.getLinksForMenu()));
 
     // writing url links as a string works
     // because UrlProvider does not guarantee order of links, we can't just
     // compare the output of writeUrlsAsString to a string, hence the hoops here
-    String result = customProv.writeUrlsAsString();
-    UrlProviderI up = new CustomUrlProvider(result);
+    String result = customProv.writeUrlsAsString(true);
+    UrlProviderI up = new CustomUrlProvider(result, "");
     assertTrue(displayLinks.containsAll(up.getLinksForMenu()));
 
-    result = customProv2.writeUrlsAsString();
-    UrlProviderI up2 = new CustomUrlProvider(result);
+    result = customProv.writeUrlsAsString(false);
+    up = new CustomUrlProvider("", result);
+    assertTrue(unselDisplayLinks.containsAll(up.getLinksForMenu()));
+
+    result = customProv2.writeUrlsAsString(true);
+    UrlProviderI up2 = new CustomUrlProvider(result, "");
+    assertTrue(displayLinks.containsAll(up2.getLinksForMenu()));
+
+    result = customProv2.writeUrlsAsString(false);
+    up2 = new CustomUrlProvider("", result);
     assertTrue(displayLinks.containsAll(up2.getLinksForMenu()));
   }
 }