3 import jalview.util.UrlLink;
7 import org.testng.Assert;
8 import org.testng.annotations.Test;
10 public class UrlLinkDisplayTest
13 @Test(groups = { "Functional" })
14 public void testDisplayColumnNames()
16 // 5 column names returned although 6 names internal to UrlLinkDisplay
17 List<String> names = UrlLinkDisplay.getDisplayColumnNames();
18 Assert.assertEquals(names.size(), 5);
21 @Test(groups = { "Functional" })
22 public void getValue()
24 UrlLink link = new UrlLink("Test Name",
25 "http://identifiers.org/$DB_ACCESSION$", "TestDB");
26 UrlLinkDisplay u = new UrlLinkDisplay("Test", link, false, false);
28 Assert.assertFalse((boolean) u.getValue(UrlLinkDisplay.PRIMARY));
29 Assert.assertEquals(u.getValue(UrlLinkDisplay.ID), "Test");
30 Assert.assertEquals(u.getValue(UrlLinkDisplay.DATABASE), "TestDB");
31 Assert.assertEquals(u.getValue(UrlLinkDisplay.NAME), "Test Name");
32 Assert.assertFalse((boolean) u.getValue(UrlLinkDisplay.SELECTED));
33 Assert.assertEquals(u.getValue(UrlLinkDisplay.URL),
34 "http://identifiers.org/$DB_ACCESSION$");
37 @Test(groups = { "Functional" })
38 public void testIsEditable()
40 // only default and selected columns are editable ever
41 // default only editable if link contains $SEQUENCE_ID$
43 UrlLink link = new UrlLink("Test Url",
44 "http://identifiers.org/$DB_ACCESSION$", "TestName");
45 UrlLinkDisplay u = new UrlLinkDisplay("Test", link, false, false);
47 Assert.assertFalse(u.isEditable(UrlLinkDisplay.PRIMARY));
48 Assert.assertTrue(u.isEditable(UrlLinkDisplay.SELECTED));
49 Assert.assertFalse(u.isEditable(UrlLinkDisplay.ID));
50 Assert.assertFalse(u.isEditable(UrlLinkDisplay.URL));
51 Assert.assertFalse(u.isEditable(UrlLinkDisplay.NAME));
52 Assert.assertFalse(u.isEditable(UrlLinkDisplay.DATABASE));
54 UrlLink vlink = new UrlLink("Test Sequence ID Url",
55 "http://myurl/$SEQUENCE_ID$", "TestName");
56 UrlLinkDisplay v = new UrlLinkDisplay("Test", vlink, false, false);
58 Assert.assertTrue(v.isEditable(UrlLinkDisplay.PRIMARY));
59 Assert.assertTrue(v.isEditable(UrlLinkDisplay.SELECTED));
60 Assert.assertFalse(v.isEditable(UrlLinkDisplay.ID));
61 Assert.assertFalse(v.isEditable(UrlLinkDisplay.URL));
62 Assert.assertFalse(v.isEditable(UrlLinkDisplay.NAME));
63 Assert.assertFalse(v.isEditable(UrlLinkDisplay.DATABASE));
66 @Test(groups = { "Functional" })
67 public void testName()
69 UrlLink link = new UrlLink("Test Url",
70 "http://identifiers.org/$DB_ACCESSION$", "TestName");
71 UrlLinkDisplay u = new UrlLinkDisplay("Test", link, false, false);
73 // Name initially as input in link
74 Assert.assertEquals(u.getDBName(), "TestName");
76 // Setting updates name
77 u.setDBName("NewName");
78 Assert.assertEquals(u.getDBName(), "NewName");
81 @Test(groups = { "Functional" })
82 public void testDescription()
84 UrlLink link = new UrlLink("Test Name",
85 "http://identifiers.org/$DB_ACCESSION$", "TestDB");
86 UrlLinkDisplay u = new UrlLinkDisplay("Test", link, false, false);
88 // Desc initially as input in link
89 Assert.assertEquals(u.getDescription(), "Test Name");
91 // Setting updates name
92 u.setDescription("New Desc");
93 Assert.assertEquals(u.getDescription(), "New Desc");
96 @Test(groups = { "Functional" })
99 UrlLink link = new UrlLink("Test Name",
100 "http://identifiers.org/$DB_ACCESSION$", "TestDB");
101 UrlLinkDisplay u = new UrlLinkDisplay("Test", link, false, false);
103 // Url initially as input in link
104 Assert.assertEquals(u.getUrl(),
105 "http://identifiers.org/$DB_ACCESSION$");
107 // Setting updates url
108 u.setUrl("http://something.new/$SEQUENCE_ID$");
109 Assert.assertEquals(u.getUrl(), "http://something.new/$SEQUENCE_ID$");
112 @Test(groups = { "Functional" })
113 public void testGetSetValue()
115 UrlLink link = new UrlLink("Test Name",
116 "http://identifiers.org/$DB_ACCESSION$", "TestDB");
117 UrlLinkDisplay u = new UrlLinkDisplay("Test", link, false, false);
119 Assert.assertFalse((boolean) u.getValue(UrlLinkDisplay.PRIMARY));
120 Assert.assertFalse((boolean) u.getValue(UrlLinkDisplay.SELECTED));
121 Assert.assertEquals(u.getValue(UrlLinkDisplay.DATABASE), "TestDB");
122 Assert.assertEquals(u.getValue(UrlLinkDisplay.NAME), "Test Name");
123 Assert.assertEquals(u.getValue(UrlLinkDisplay.ID), "Test");
124 Assert.assertEquals(u.getValue(UrlLinkDisplay.URL),
125 "http://identifiers.org/$DB_ACCESSION$");
127 u.setValue(UrlLinkDisplay.PRIMARY, true);
128 Assert.assertTrue((boolean) u.getValue(UrlLinkDisplay.PRIMARY));
130 u.setValue(UrlLinkDisplay.SELECTED, true);
131 Assert.assertTrue((boolean) u.getValue(UrlLinkDisplay.SELECTED));
133 u.setValue(UrlLinkDisplay.NAME, "New Desc");
134 Assert.assertEquals(u.getValue(UrlLinkDisplay.NAME), "New Desc");
135 Assert.assertEquals(u.getValue(UrlLinkDisplay.DATABASE), "New Desc");
137 u.setValue(UrlLinkDisplay.DATABASE, "NewName");
138 Assert.assertEquals(u.getValue(UrlLinkDisplay.DATABASE), "NewName");
140 u.setValue(UrlLinkDisplay.ID, "New ID");
141 Assert.assertEquals(u.getValue(UrlLinkDisplay.ID), "New ID");
143 u.setValue(UrlLinkDisplay.URL, "http://something.new/$SEQUENCE_ID$");
144 Assert.assertEquals(u.getValue(UrlLinkDisplay.URL),
145 "http://something.new/$SEQUENCE_ID$");