1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 package org.apache.juneau.svl.vars;
18
19 import static org.junit.jupiter.api.Assertions.*;
20
21 import org.apache.juneau.*;
22 import org.apache.juneau.svl.*;
23 import org.junit.jupiter.api.*;
24
25 class PatternReplaceVarTest extends TestBase {
26
27
28
29
30 @Test void a01_test() {
31 var vr = VarResolver.create().vars(PatternReplaceVar.class, SystemPropertiesVar.class).build();
32
33 System.setProperty("PatternReplaceVarTest.test", "foo bar");
34 System.setProperty("PatternReplaceVarTest.test2", "size=23;display=none;");
35
36
37 assertEquals("bar bar", vr.resolve("$PR{$S{PatternReplaceVarTest.test},foo,bar}"));
38 assertEquals("coo bar", vr.resolve("$PR{$S{PatternReplaceVarTest.test},^f?,co}"));
39 assertEquals("fine", vr.resolve("$PR{$S{PatternReplaceVarTest.test},oo*,ine}"));
40 assertEquals("FOO FOO", vr.resolve("$PR{$S{PatternReplaceVarTest.test},([a-z]+),FOO}"));
41
42
43 assertEquals("size=23px;display=none;", vr.resolve("$PR{$S{PatternReplaceVarTest.test2},(size=([\\d]+)),\\$1px}"));
44 assertEquals("size=??px;display=none;", vr.resolve("$PR{$S{PatternReplaceVarTest.test2},[\\d]+,??px}"));
45 assertEquals("size=23;display=none", vr.resolve("$PR{$S{PatternReplaceVarTest.test2},;\\$,}"));
46 assertEquals("size=23;none=display;", vr.resolve("$PR{$S{PatternReplaceVarTest.test2},;(*)=(*[^;]),;\\$2=\\$1}"));
47
48
49 }
50 }