View Javadoc
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          // insert empty map
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  }