1 package emissary.server.mvc;
2
3 import emissary.server.mvc.NavAction.EmissaryNav;
4
5 import org.apache.commons.collections4.CollectionUtils;
6 import org.junit.jupiter.api.Test;
7
8 import java.util.LinkedHashMap;
9 import java.util.Map;
10
11 import static org.junit.jupiter.api.Assertions.assertEquals;
12 import static org.junit.jupiter.api.Assertions.assertTrue;
13
14 class NavActionTest {
15
16 @Test
17 void navItems() {
18
19 var navItems = new LinkedHashMap<String, String>();
20 navItems.put("Item1", "/path/to/resource");
21 navItems.put("Item2", "http://testing1.com");
22 navItems.put("Item3", "https://testing2.com");
23 navItems.put("Item4", "javascript:alert(document.cookie)");
24 navItems.put("Item5", "ftp://testing");
25
26 EmissaryNav nav = new EmissaryNav();
27
28
29 nav.setNavItems(Map.of());
30 assertTrue(CollectionUtils.isEmpty(nav.getNavItems()));
31
32 nav.setNavItems(navItems);
33 assertEquals(3, nav.getNavItems().size());
34 assertEquals("Item1", nav.getNavItems().get(0).getDisplay());
35 assertEquals("/path/to/resource", nav.getNavItems().get(0).getLink());
36 assertEquals("Item2", nav.getNavItems().get(1).getDisplay());
37 assertEquals("http://testing1.com", nav.getNavItems().get(1).getLink());
38 assertEquals("Item3", nav.getNavItems().get(2).getDisplay());
39 assertEquals("https://testing2.com", nav.getNavItems().get(2).getLink());
40 }
41
42 }