1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 package org.apache.maven.plugins.war.util;
20
21 import java.util.ArrayList;
22
23 import org.junit.jupiter.api.Test;
24
25 import static org.junit.jupiter.api.Assertions.assertEquals;
26 import static org.junit.jupiter.api.Assertions.assertFalse;
27 import static org.junit.jupiter.api.Assertions.assertTrue;
28
29
30
31
32 public class WebappStructureTest {
33 @Test
34 public void testUnknownFileNotAvailable() {
35 final WebappStructure structure = new WebappStructure(new ArrayList<>());
36 assertFalse(structure.isRegistered("/foo/bar.txt"));
37 }
38
39 @Test
40 public void testRegisterSamePathTwice() {
41 final WebappStructure structure = new WebappStructure(new ArrayList<>());
42 structure.registerFile("overlay1", "WEB-INF/web.xml");
43 assertFalse(structure.registerFile("currentBuild", "WEB-INF/web.xml"));
44 }
45
46 @Test
47 public void testRegisterForced() {
48 final String path = "WEB-INF/web.xml";
49 final WebappStructure structure = new WebappStructure(new ArrayList<>());
50 assertFalse(structure.registerFileForced("overlay1", path), "New file should return false");
51 assertEquals("overlay1", structure.getOwner(path));
52 }
53
54 @Test
55 public void testRegisterSamePathTwiceForced() {
56 final String path = "WEB-INF/web.xml";
57 final WebappStructure structure = new WebappStructure(new ArrayList<>());
58 structure.registerFile("overlay1", path);
59 assertEquals("overlay1", structure.getOwner(path));
60 assertTrue(structure.registerFileForced("currentBuild", path), "owner replacement should have returned true");
61 assertEquals("currentBuild", structure.getOwner(path));
62 }
63
64
65 }