3 import jalview.util.UrlLink;
7 import org.testng.Assert;
8 import org.testng.annotations.Test;
10 public class UrlLinkDisplayTest {
12 @Test(groups = { "Functional" })
13 public void testDisplayColumnNames()
15 // 4 column names returned although 5 names internal to UrlLinkDisplay
16 List<String> names = UrlLinkDisplay.getDisplayColumnNames();
17 Assert.assertEquals(names.size(), 4);
20 @Test(groups = { "Functional" })
21 public void getValue()
23 UrlLink link = new UrlLink("Test Url",
24 "http://identifiers.org/$DB_ACCESSION$");
25 UrlLinkDisplay u = new UrlLinkDisplay("Test", link, false, false);
27 Assert.assertFalse((boolean) u.getValue(UrlLinkDisplay.PRIMARY));
28 Assert.assertEquals(u.getValue(UrlLinkDisplay.ID), "Test");
29 Assert.assertEquals(u.getValue(UrlLinkDisplay.NAME), "Test Url");
30 Assert.assertFalse((boolean) u.getValue(UrlLinkDisplay.SELECTED));
31 Assert.assertEquals(u.getValue(UrlLinkDisplay.URL),
32 "http://identifiers.org/$DB_ACCESSION$");
35 @Test(groups = { "Functional" })
36 public void testIsEditable()
38 // only default and selected columns are editable ever
39 // default only editable if link contains $SEQUENCE_ID$
41 UrlLink link = new UrlLink("Test Url",
42 "http://identifiers.org/$DB_ACCESSION$");
43 UrlLinkDisplay u = new UrlLinkDisplay("Test", link, false, false);
45 Assert.assertFalse(u.isEditable(UrlLinkDisplay.PRIMARY));
46 Assert.assertTrue(u.isEditable(UrlLinkDisplay.SELECTED));
47 Assert.assertFalse(u.isEditable(UrlLinkDisplay.ID));
48 Assert.assertFalse(u.isEditable(UrlLinkDisplay.URL));
49 Assert.assertFalse(u.isEditable(UrlLinkDisplay.NAME));
51 UrlLink vlink = new UrlLink("Test Sequence ID Url",
52 "http://myurl/$SEQUENCE_ID$");
53 UrlLinkDisplay v = new UrlLinkDisplay("Test", vlink, false, false);
55 Assert.assertTrue(v.isEditable(UrlLinkDisplay.PRIMARY));
56 Assert.assertTrue(v.isEditable(UrlLinkDisplay.SELECTED));
57 Assert.assertFalse(v.isEditable(UrlLinkDisplay.ID));
58 Assert.assertFalse(v.isEditable(UrlLinkDisplay.URL));
59 Assert.assertFalse(v.isEditable(UrlLinkDisplay.NAME));
62 @Test(groups = { "Functional" })
63 public void testName()
65 UrlLink link = new UrlLink("Test Url",
66 "http://identifiers.org/$DB_ACCESSION$");
67 UrlLinkDisplay u = new UrlLinkDisplay("Test", link, false, false);
69 // Name initially as input in link
70 Assert.assertEquals(u.getName(), "Test Url");
72 // Setting updates name
73 u.setName("New Name");
74 Assert.assertEquals(u.getName(), "New Name");
77 @Test(groups = { "Functional" })
80 UrlLink link = new UrlLink("Test Url",
81 "http://identifiers.org/$DB_ACCESSION$");
82 UrlLinkDisplay u = new UrlLinkDisplay("Test", link, false, false);
84 // Url initially as input in link
85 Assert.assertEquals(u.getUrl(), "http://identifiers.org/$DB_ACCESSION$");
87 // Setting updates url
88 u.setUrl("http://something.new/$SEQUENCE_ID$");
89 Assert.assertEquals(u.getUrl(), "http://something.new/$SEQUENCE_ID$");
92 @Test(groups = { "Functional" })
93 public void testGetSetValue()
95 UrlLink link = new UrlLink("Test Url",
96 "http://identifiers.org/$DB_ACCESSION$");
97 UrlLinkDisplay u = new UrlLinkDisplay("Test", link, false, false);
99 Assert.assertFalse((boolean) u.getValue(UrlLinkDisplay.PRIMARY));
100 Assert.assertFalse((boolean) u.getValue(UrlLinkDisplay.SELECTED));
101 Assert.assertEquals(u.getValue(UrlLinkDisplay.NAME), "Test Url");
102 Assert.assertEquals(u.getValue(UrlLinkDisplay.ID), "Test");
103 Assert.assertEquals(u.getValue(UrlLinkDisplay.URL),
104 "http://identifiers.org/$DB_ACCESSION$");
106 u.setValue(UrlLinkDisplay.PRIMARY, true);
107 Assert.assertTrue((boolean) u.getValue(UrlLinkDisplay.PRIMARY));
109 u.setValue(UrlLinkDisplay.SELECTED, true);
110 Assert.assertTrue((boolean) u.getValue(UrlLinkDisplay.SELECTED));
112 u.setValue(UrlLinkDisplay.NAME, "New Name");
113 Assert.assertEquals(u.getValue(UrlLinkDisplay.NAME), "New Name");
115 u.setValue(UrlLinkDisplay.ID, "New ID");
116 Assert.assertEquals(u.getValue(UrlLinkDisplay.ID), "New ID");
118 u.setValue(UrlLinkDisplay.URL, "http://something.new/$SEQUENCE_ID$");
119 Assert.assertEquals(u.getValue(UrlLinkDisplay.URL),
120 "http://something.new/$SEQUENCE_ID$");