Skip to content

Commit e874aa4

Browse files
committed
make JsonBuilder public and fix ValueMerge change detection
1 parent 9fc07f6 commit e874aa4

8 files changed

Lines changed: 23 additions & 17 deletions

File tree

src/main/java/io/hyperfoil/tools/parse/ExpRule.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
package io.hyperfoil.tools.parse;
22

3-
import io.hyperfoil.tools.parse.internal.JsonBuilder;
3+
import io.hyperfoil.tools.parse.json.JsonBuilder;
44
import io.hyperfoil.tools.yaup.json.Json;
55

66
import java.util.List;
@@ -93,6 +93,7 @@ public boolean prePopulate(JsonBuilder builder, List<Object> data){
9393
break;
9494
case TargetRoot:
9595
builder.pushTarget(builder.getRoot(),filteredData.toString()+ Exp.ROOT_TARGET_NAME);
96+
changedTarget=true;
9697
break;
9798
}
9899
return changedTarget;

src/main/java/io/hyperfoil/tools/parse/Parser.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
import io.hyperfoil.tools.parse.factory.ParseFactory;
44
import io.hyperfoil.tools.parse.internal.CheatChars;
5-
import io.hyperfoil.tools.parse.internal.JsonBuilder;
5+
import io.hyperfoil.tools.parse.json.JsonBuilder;
66
import io.hyperfoil.tools.yaup.json.Json;
77

88
import java.util.*;

src/main/java/io/hyperfoil/tools/parse/ValueMerge.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
package io.hyperfoil.tools.parse;
22

3-
import io.hyperfoil.tools.parse.internal.JsonBuilder;
3+
import io.hyperfoil.tools.parse.json.JsonBuilder;
44
import io.hyperfoil.tools.yaup.json.Json;
55

66
import java.util.concurrent.atomic.AtomicBoolean;

src/main/java/io/hyperfoil/tools/parse/json/JsonBuilder.java

Lines changed: 16 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
package io.hyperfoil.tools.parse.internal;
1+
package io.hyperfoil.tools.parse.json;
22

33
import io.hyperfoil.tools.yaup.json.Json;
44

@@ -150,6 +150,21 @@ public Json popTarget(int count){
150150

151151
public int size(){return targets.size();}
152152

153+
public Json targetStackJson(){
154+
Json rtrn = new Json();
155+
for(int i= targets.size()-1; i>0; i--){
156+
Json entry = new Json();
157+
entry.set("target",targets.get(i).target);
158+
entry.set("info",Json.fromMap(targets.get(i).info));
159+
if(entry.getJson("info").has(NAME_KEY)){
160+
entry.getJson("info").set("name",entry.getJson("info").get(NAME_KEY));
161+
entry.getJson("info").remove(NAME_KEY);
162+
}
163+
rtrn.add(entry);
164+
}
165+
return rtrn;
166+
}
167+
153168
public String debug(boolean recursive){
154169
StringBuilder sb = new StringBuilder();
155170
int infoWidth = targets.stream().mapToInt((s)->s.info.toString().length()).max().orElse(2);

src/test/java/io/hyperfoil/tools/parse/factory/JStackFactoryTest.java

Lines changed: 1 addition & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,22 +1,15 @@
11
package io.hyperfoil.tools.parse.factory;
22

33

4-
import io.hyperfoil.tools.parse.Parser;
5-
import io.hyperfoil.tools.parse.factory.JStackFactory;
6-
import io.hyperfoil.tools.parse.reader.TextLineReader;
74
import org.junit.Assert;
85
import org.junit.Before;
96
import org.junit.BeforeClass;
107
import org.junit.Test;
118
import io.hyperfoil.tools.parse.Exp;
129
import io.hyperfoil.tools.parse.internal.CheatChars;
13-
import io.hyperfoil.tools.parse.internal.JsonBuilder;
10+
import io.hyperfoil.tools.parse.json.JsonBuilder;
1411
import io.hyperfoil.tools.yaup.json.Json;
1512

16-
import java.util.ArrayList;
17-
import java.util.HashSet;
18-
import java.util.List;
19-
2013
import static org.junit.Assert.assertEquals;
2114
import static org.junit.Assert.assertTrue;
2215

src/test/java/io/hyperfoil/tools/parse/factory/WrkFactoryTest.java

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,6 @@
77

88
import io.hyperfoil.tools.parse.JsonConsumer;
99
import io.hyperfoil.tools.parse.Parser;
10-
import io.hyperfoil.tools.parse.internal.JsonBuilder;
1110
import io.hyperfoil.tools.yaup.json.Json;
1211
import org.junit.BeforeClass;
1312
import org.junit.Test;

src/test/java/io/hyperfoil/tools/parse/factory/XanFactoryTest.java

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,10 +2,8 @@
22

33
import io.hyperfoil.tools.parse.Eat;
44
import io.hyperfoil.tools.parse.ExpRule;
5-
import io.hyperfoil.tools.parse.Parser;
65
import io.hyperfoil.tools.parse.internal.CheatChars;
7-
import io.hyperfoil.tools.parse.internal.JsonBuilder;
8-
import io.hyperfoil.tools.parse.reader.TextLineReader;
6+
import io.hyperfoil.tools.parse.json.JsonBuilder;
97
import io.hyperfoil.tools.yaup.json.Json;
108
import org.junit.Assert;
119
import org.junit.Before;

src/test/java/io/hyperfoil/tools/parse/internal/JsonBuilderTest.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
package io.hyperfoil.tools.parse.internal;
22

3-
import io.hyperfoil.tools.parse.internal.JsonBuilder;
3+
import io.hyperfoil.tools.parse.json.JsonBuilder;
44
import org.junit.Assert;
55
import org.junit.Test;
66
import io.hyperfoil.tools.yaup.json.Json;

0 commit comments

Comments
 (0)