Skip to content

Commit c2abbe6

Browse files
committed
fix jmh to be per adapter type
1 parent ef9e0ea commit c2abbe6

File tree

1 file changed

+23
-2
lines changed

1 file changed

+23
-2
lines changed

Diff for: java/json-transform/src/jmh/java/transformers/TransformersFunctionsBenchmarksTests.java

+23-2
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
package transformers;
22

33
import co.nlighten.jsontransform.JsonTransformerTest;
4+
import co.nlighten.jsontransform.adapters.JsonAdapter;
45
import org.openjdk.jmh.annotations.*;
56

67
import java.util.concurrent.TimeUnit;
@@ -13,10 +14,30 @@
1314
@State(value = Scope.Benchmark)
1415
public class TransformersFunctionsBenchmarksTests {
1516

17+
@Param({"gson", "jackson", "pojo", "jsonOrg", "jsonSmart"})
18+
public String adapterType;
19+
20+
public JsonAdapter<?, ?, ?> getAdapterByType(String adapterType) {
21+
switch (adapterType) {
22+
case "gson":
23+
return new co.nlighten.jsontransform.adapters.gson.GsonJsonAdapter();
24+
case "jackson":
25+
return new co.nlighten.jsontransform.adapters.jackson.JacksonJsonAdapter();
26+
case "pojo":
27+
return new co.nlighten.jsontransform.adapters.pojo.PojoJsonAdapter();
28+
case "jsonOrg":
29+
return new co.nlighten.jsontransform.adapters.jsonorg.JsonOrgJsonAdapter();
30+
case "jsonSmart":
31+
return new co.nlighten.jsontransform.adapters.jsonsmart.JsonSmartJsonAdapter();
32+
default:
33+
throw new IllegalArgumentException("Invalid adapter type: " + adapterType);
34+
}
35+
}
36+
1637
@Benchmark
1738
@Measurement(iterations = 10, time = 100, timeUnit = TimeUnit.MILLISECONDS)
18-
public void measureInputExtractorSpreadArray2(){
39+
public void measureInputExtractorSpreadArray2() {
1940
var test = new JsonTransformerTest();
20-
test.testInputExtractorSpreadArray2();
41+
test.testInputExtractorSpreadArray2(getAdapterByType(adapterType));
2142
}
2243
}

0 commit comments

Comments
 (0)