Skip to content

Commit bb0a589

Browse files
committed
fix review10: refacto mapper
1 parent 2e0f45d commit bb0a589

File tree

5 files changed

+36
-56
lines changed

5 files changed

+36
-56
lines changed

extra/modules/greenbids-real-time-data/src/test/java/org/prebid/server/hooks/modules/greenbids/real/time/data/model/data/GreenbidsInferenceDataServiceTest.java

Lines changed: 5 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
package org.prebid.server.hooks.modules.greenbids.real.time.data.model.data;
22

3-
import com.fasterxml.jackson.databind.ObjectMapper;
43
import com.iab.openrtb.request.Banner;
54
import com.iab.openrtb.request.BidRequest;
65
import com.iab.openrtb.request.Device;
@@ -16,8 +15,7 @@
1615
import org.mockito.Mock;
1716
import org.mockito.junit.jupiter.MockitoExtension;
1817
import org.prebid.server.exception.PreBidException;
19-
import org.prebid.server.json.JacksonMapper;
20-
import org.prebid.server.json.ObjectMapperProvider;
18+
import org.prebid.server.hooks.modules.greenbids.real.time.data.util.TestBidRequestProvider;
2119

2220
import java.io.IOException;
2321
import java.net.InetAddress;
@@ -46,15 +44,11 @@ public class GreenbidsInferenceDataServiceTest {
4644
@Mock
4745
private Country country;
4846

49-
private JacksonMapper jacksonMapper;
50-
5147
private GreenbidsInferenceDataService target;
5248

5349
@BeforeEach
5450
public void setUp() {
55-
final ObjectMapper mapper = ObjectMapperProvider.mapper();
56-
jacksonMapper = new JacksonMapper(mapper);
57-
target = new GreenbidsInferenceDataService(dbReader, jacksonMapper.mapper());
51+
target = new GreenbidsInferenceDataService(dbReader, TestBidRequestProvider.mapper);
5852
}
5953

6054
@Test
@@ -64,7 +58,7 @@ public void extractThrottlingMessagesFromBidRequestShouldReturnValidThrottlingMe
6458
final Banner banner = givenBanner();
6559
final Imp imp = Imp.builder()
6660
.id("adunitcodevalue")
67-
.ext(givenImpExt(jacksonMapper))
61+
.ext(givenImpExt())
6862
.banner(banner)
6963
.build();
7064
final Device device = givenDevice(identity());
@@ -105,7 +99,7 @@ public void extractThrottlingMessagesFromBidRequestShouldHandleMissingIp() {
10599
final Banner banner = givenBanner();
106100
final Imp imp = Imp.builder()
107101
.id("adunitcodevalue")
108-
.ext(givenImpExt(jacksonMapper))
102+
.ext(givenImpExt())
109103
.banner(banner)
110104
.build();
111105
final Device device = givenDeviceWithoutIp(identity());
@@ -142,7 +136,7 @@ public void extractThrottlingMessagesFromBidRequestShouldThrowPreBidExceptionWhe
142136
final Banner banner = givenBanner();
143137
final Imp imp = Imp.builder()
144138
.id("adunitcodevalue")
145-
.ext(givenImpExt(jacksonMapper))
139+
.ext(givenImpExt())
146140
.banner(banner)
147141
.build();
148142
final Device device = givenDevice(identity());

extra/modules/greenbids-real-time-data/src/test/java/org/prebid/server/hooks/modules/greenbids/real/time/data/model/predictor/ThresholdCacheTest.java

Lines changed: 5 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
package org.prebid.server.hooks.modules.greenbids.real.time.data.model.predictor;
22

3-
import com.fasterxml.jackson.databind.ObjectMapper;
43
import com.github.benmanes.caffeine.cache.Cache;
54
import com.google.cloud.storage.Blob;
65
import com.google.cloud.storage.Bucket;
@@ -16,7 +15,7 @@
1615
import org.prebid.server.exception.PreBidException;
1716
import org.prebid.server.hooks.modules.greenbids.real.time.data.core.ThrottlingThresholds;
1817
import org.prebid.server.hooks.modules.greenbids.real.time.data.core.ThrottlingThresholdsFactory;
19-
import org.prebid.server.json.ObjectMapperProvider;
18+
import org.prebid.server.hooks.modules.greenbids.real.time.data.util.TestBidRequestProvider;
2019

2120
import java.io.IOException;
2221
import java.lang.reflect.Field;
@@ -59,18 +58,15 @@ public class ThresholdCacheTest {
5958

6059
private Vertx vertx;
6160

62-
private ObjectMapper mapper;
63-
6461
private ThresholdCache target;
6562

6663
@BeforeEach
6764
public void setUp() {
68-
mapper = ObjectMapperProvider.mapper();
6965
vertx = Vertx.vertx();
7066
target = new ThresholdCache(
7167
storage,
7268
GCS_BUCKET_NAME,
73-
mapper,
69+
TestBidRequestProvider.mapper,
7470
cache,
7571
THRESHOLD_CACHE_KEY_PREFIX,
7672
vertx,
@@ -127,7 +123,8 @@ public void getShouldFetchThresholdsWhenNotInCache() throws IOException {
127123
when(storage.get(GCS_BUCKET_NAME)).thenReturn(bucket);
128124
when(bucket.get(THRESHOLDS_PATH)).thenReturn(blob);
129125
when(blob.getContent()).thenReturn(bytes);
130-
when(throttlingThresholdsFactory.create(bytes, mapper)).thenReturn(throttlingThresholds);
126+
when(throttlingThresholdsFactory.create(bytes, TestBidRequestProvider.mapper))
127+
.thenReturn(throttlingThresholds);
131128

132129
// when
133130
final Future<ThrottlingThresholds> future = target.get(THRESHOLDS_PATH, PBUUID);
@@ -167,7 +164,7 @@ public void getShouldThrowExceptionWhenLoadingJsonFails() throws IOException {
167164
when(storage.get(GCS_BUCKET_NAME)).thenReturn(bucket);
168165
when(bucket.get(THRESHOLDS_PATH)).thenReturn(blob);
169166
when(blob.getContent()).thenReturn(bytes);
170-
when(throttlingThresholdsFactory.create(bytes, mapper)).thenThrow(
167+
when(throttlingThresholdsFactory.create(bytes, TestBidRequestProvider.mapper)).thenThrow(
171168
new IOException("Failed to load throttling thresholds json"));
172169

173170
// when

extra/modules/greenbids-real-time-data/src/test/java/org/prebid/server/hooks/modules/greenbids/real/time/data/model/result/GreenbidsInvocationServiceTest.java

Lines changed: 2 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
package org.prebid.server.hooks.modules.greenbids.real.time.data.model.result;
22

33
import com.fasterxml.jackson.databind.JsonNode;
4-
import com.fasterxml.jackson.databind.ObjectMapper;
54
import com.iab.openrtb.request.Banner;
65
import com.iab.openrtb.request.BidRequest;
76
import com.iab.openrtb.request.Device;
@@ -12,11 +11,7 @@
1211
import org.mockito.junit.jupiter.MockitoExtension;
1312
import org.prebid.server.analytics.reporter.greenbids.model.Ortb2ImpExtResult;
1413
import org.prebid.server.hooks.modules.greenbids.real.time.data.core.Partner;
15-
import org.prebid.server.hooks.modules.greenbids.real.time.data.model.result.GreenbidsInvocationResult;
16-
import org.prebid.server.hooks.modules.greenbids.real.time.data.model.result.GreenbidsInvocationService;
1714
import org.prebid.server.hooks.v1.InvocationAction;
18-
import org.prebid.server.json.JacksonMapper;
19-
import org.prebid.server.json.ObjectMapperProvider;
2015

2116
import java.util.HashMap;
2217
import java.util.List;
@@ -32,14 +27,10 @@
3227
@ExtendWith(MockitoExtension.class)
3328
public class GreenbidsInvocationServiceTest {
3429

35-
private JacksonMapper jacksonMapper;
36-
3730
private GreenbidsInvocationService target;
3831

3932
@BeforeEach
4033
public void setUp() {
41-
final ObjectMapper mapper = ObjectMapperProvider.mapper();
42-
jacksonMapper = new JacksonMapper(mapper);
4334
target = new GreenbidsInvocationService();
4435
}
4536

@@ -49,7 +40,7 @@ public void createGreenbidsInvocationResultShouldReturnUpdateBidRequestWhenNotEx
4940
final Banner banner = givenBanner();
5041
final Imp imp = Imp.builder()
5142
.id("adunitcodevalue")
52-
.ext(givenImpExt(jacksonMapper))
43+
.ext(givenImpExt())
5344
.banner(banner)
5445
.build();
5546
final Device device = givenDevice(identity());
@@ -86,7 +77,7 @@ public void createGreenbidsInvocationResultShouldReturnNoActionWhenExploration()
8677
final Banner banner = givenBanner();
8778
final Imp imp = Imp.builder()
8879
.id("adunitcodevalue")
89-
.ext(givenImpExt(jacksonMapper))
80+
.ext(givenImpExt())
9081
.banner(banner)
9182
.build();
9283
final Device device = givenDevice(identity());

extra/modules/greenbids-real-time-data/src/test/java/org/prebid/server/hooks/modules/greenbids/real/time/data/util/TestBidRequestProvider.java

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
package org.prebid.server.hooks.modules.greenbids.real.time.data.util;
22

3+
import com.fasterxml.jackson.databind.ObjectMapper;
34
import com.fasterxml.jackson.databind.node.ObjectNode;
45
import com.fasterxml.jackson.databind.node.TextNode;
56
import com.iab.openrtb.request.Banner;
@@ -9,6 +10,7 @@
910
import com.iab.openrtb.request.Imp;
1011
import com.iab.openrtb.request.Site;
1112
import org.prebid.server.json.JacksonMapper;
13+
import org.prebid.server.json.ObjectMapperProvider;
1214
import org.prebid.server.proto.openrtb.ext.request.ExtRequest;
1315

1416
import java.util.Collections;
@@ -17,6 +19,9 @@
1719

1820
public class TestBidRequestProvider {
1921

22+
public static final ObjectMapper mapper = ObjectMapperProvider.mapper();
23+
public static final JacksonMapper jacksonMapper = new JacksonMapper(mapper);
24+
2025
private TestBidRequestProvider() { }
2126

2227
public static BidRequest givenBidRequest(
@@ -37,7 +42,7 @@ public static Site givenSite(UnaryOperator<Site.SiteBuilder> siteCustomizer) {
3742
return siteCustomizer.apply(Site.builder().domain("www.leparisien.fr")).build();
3843
}
3944

40-
public static ObjectNode givenImpExt(JacksonMapper jacksonMapper) {
45+
public static ObjectNode givenImpExt() {
4146
final ObjectNode bidderNode = jacksonMapper.mapper().createObjectNode();
4247

4348
final ObjectNode rubiconNode = jacksonMapper.mapper().createObjectNode();

extra/modules/greenbids-real-time-data/src/test/java/org/prebid/server/hooks/modules/greenbids/real/time/data/v1/GreenbidsRealTimeDataProcessedAuctionRequestHookTest.java

Lines changed: 18 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,6 @@
22

33
import ai.onnxruntime.OrtException;
44
import com.fasterxml.jackson.databind.JsonNode;
5-
import com.fasterxml.jackson.databind.ObjectMapper;
65
import com.fasterxml.jackson.databind.node.ObjectNode;
76
import com.fasterxml.jackson.databind.node.TextNode;
87
import com.github.benmanes.caffeine.cache.Cache;
@@ -35,6 +34,7 @@
3534
import org.prebid.server.hooks.modules.greenbids.real.time.data.model.predictor.ThresholdCache;
3635
import org.prebid.server.hooks.modules.greenbids.real.time.data.model.result.AnalyticsResult;
3736
import org.prebid.server.hooks.modules.greenbids.real.time.data.model.result.GreenbidsInvocationService;
37+
import org.prebid.server.hooks.modules.greenbids.real.time.data.util.TestBidRequestProvider;
3838
import org.prebid.server.hooks.modules.greenbids.real.time.data.v1.model.analytics.ActivityImpl;
3939
import org.prebid.server.hooks.modules.greenbids.real.time.data.v1.model.analytics.AppliedToImpl;
4040
import org.prebid.server.hooks.modules.greenbids.real.time.data.v1.model.analytics.ResultImpl;
@@ -46,8 +46,6 @@
4646
import org.prebid.server.hooks.v1.analytics.Tags;
4747
import org.prebid.server.hooks.v1.auction.AuctionInvocationContext;
4848
import org.prebid.server.hooks.v1.auction.AuctionRequestPayload;
49-
import org.prebid.server.json.JacksonMapper;
50-
import org.prebid.server.json.ObjectMapperProvider;
5149
import org.prebid.server.model.HttpRequestContext;
5250
import org.prebid.server.proto.openrtb.ext.request.ExtRequest;
5351
import org.prebid.server.proto.openrtb.ext.request.ExtRequestPrebid;
@@ -80,14 +78,10 @@ public class GreenbidsRealTimeDataProcessedAuctionRequestHookTest {
8078
@Mock
8179
private Cache<String, ThrottlingThresholds> thresholdsCacheWithExpiration;
8280

83-
private JacksonMapper jacksonMapper;
84-
8581
private GreenbidsRealTimeDataProcessedAuctionRequestHook target;
8682

8783
@BeforeEach
8884
public void setUp() throws IOException {
89-
final ObjectMapper mapper = ObjectMapperProvider.mapper();
90-
jacksonMapper = new JacksonMapper(mapper);
9185
final Storage storage = StorageOptions.newBuilder()
9286
.setProjectId("test_project").build().getService();
9387
final File database = new File("src/test/resources/GeoLite2-Country.mmdb");
@@ -105,7 +99,7 @@ public void setUp() throws IOException {
10599
final ThresholdCache thresholdCache = new ThresholdCache(
106100
storage,
107101
"test_bucket",
108-
ObjectMapperProvider.mapper(),
102+
TestBidRequestProvider.mapper,
109103
thresholdsCacheWithExpiration,
110104
"throttlingThresholds_",
111105
Vertx.vertx(),
@@ -115,10 +109,10 @@ public void setUp() throws IOException {
115109
thresholdCache);
116110
final GreenbidsInferenceDataService greenbidsInferenceDataService = new GreenbidsInferenceDataService(
117111
dbReader,
118-
ObjectMapperProvider.mapper());
112+
TestBidRequestProvider.mapper);
119113
final GreenbidsInvocationService greenbidsInvocationService = new GreenbidsInvocationService();
120114
target = new GreenbidsRealTimeDataProcessedAuctionRequestHook(
121-
ObjectMapperProvider.mapper(),
115+
TestBidRequestProvider.mapper,
122116
filterService,
123117
onnxModelRunnerWithThresholds,
124118
greenbidsInferenceDataService,
@@ -132,7 +126,7 @@ public void callShouldExitEarlyWhenPartnerNotActivatedInBidRequest() {
132126

133127
final Imp imp = Imp.builder()
134128
.id("adunitcodevalue")
135-
.ext(givenImpExt(jacksonMapper))
129+
.ext(givenImpExt())
136130
.banner(banner)
137131
.build();
138132

@@ -163,7 +157,7 @@ public void callShouldNotFilterBiddersAndReturnAnalyticsTagWhenExploration() thr
163157

164158
final Imp imp = Imp.builder()
165159
.id("adunitcodevalue")
166-
.ext(givenImpExt(jacksonMapper))
160+
.ext(givenImpExt())
167161
.banner(banner)
168162
.build();
169163

@@ -209,7 +203,7 @@ public void callShouldFilterBiddersBasedOnModelWhenAnyFeatureNotAvailable() thro
209203

210204
final Imp imp = Imp.builder()
211205
.id("adunitcodevalue")
212-
.ext(givenImpExt(jacksonMapper))
206+
.ext(givenImpExt())
213207
.banner(banner)
214208
.build();
215209

@@ -225,7 +219,7 @@ public void callShouldFilterBiddersBasedOnModelWhenAnyFeatureNotAvailable() thro
225219
.thenReturn(givenThrottlingThresholds());
226220

227221
final BidRequest expectedBidRequest = expectedUpdatedBidRequest(
228-
request -> request, jacksonMapper, explorationRate);
222+
request -> request, explorationRate);
229223
final AnalyticsResult expectedAnalyticsResult = expectedAnalyticsResult(false, false);
230224

231225
// when
@@ -264,7 +258,7 @@ public void callShouldFilterBiddersBasedOnModelResults() throws OrtException, IO
264258

265259
final Imp imp = Imp.builder()
266260
.id("adunitcodevalue")
267-
.ext(givenImpExt(jacksonMapper))
261+
.ext(givenImpExt())
268262
.banner(banner)
269263
.build();
270264

@@ -281,7 +275,7 @@ public void callShouldFilterBiddersBasedOnModelResults() throws OrtException, IO
281275
.thenReturn(givenThrottlingThresholds());
282276

283277
final BidRequest expectedBidRequest = expectedUpdatedBidRequest(
284-
request -> request, jacksonMapper, explorationRate);
278+
request -> request, explorationRate);
285279
final AnalyticsResult expectedAnalyticsResult = expectedAnalyticsResult(false, false);
286280

287281
// when
@@ -313,12 +307,12 @@ public void callShouldFilterBiddersBasedOnModelResults() throws OrtException, IO
313307
}
314308

315309
static ExtRequest givenExtRequest(Double explorationRate) {
316-
final ObjectNode greenbidsNode = new ObjectMapper().createObjectNode();
310+
final ObjectNode greenbidsNode = TestBidRequestProvider.mapper.createObjectNode();
317311
greenbidsNode.put("pbuid", "test-pbuid");
318312
greenbidsNode.put("targetTpr", 0.60);
319313
greenbidsNode.put("explorationRate", explorationRate);
320314

321-
final ObjectNode analyticsNode = new ObjectMapper().createObjectNode();
315+
final ObjectNode analyticsNode = TestBidRequestProvider.mapper.createObjectNode();
322316
analyticsNode.set("greenbids-rtd", greenbidsNode);
323317

324318
return ExtRequest.of(ExtRequestPrebid
@@ -351,25 +345,24 @@ private OnnxModelRunner givenOnnxModelRunner() throws OrtException, IOException
351345
}
352346

353347
private ThrottlingThresholds givenThrottlingThresholds() throws IOException {
354-
final JsonNode thresholdsJsonNode = jacksonMapper.mapper().readTree(
348+
final JsonNode thresholdsJsonNode = TestBidRequestProvider.mapper.readTree(
355349
Files.newInputStream(Paths.get(
356350
"src/test/resources/thresholds_pbuid=test-pbuid.json")));
357-
return jacksonMapper.mapper()
351+
return TestBidRequestProvider.mapper
358352
.treeToValue(thresholdsJsonNode, ThrottlingThresholds.class);
359353
}
360354

361355
private BidRequest expectedUpdatedBidRequest(
362356
UnaryOperator<BidRequest.BidRequestBuilder> bidRequestCustomizer,
363-
JacksonMapper jacksonMapper,
364357
Double explorationRate) {
365358

366359
final Banner banner = givenBanner();
367360

368-
final ObjectNode bidderNode = jacksonMapper.mapper().createObjectNode();
369-
final ObjectNode prebidNode = jacksonMapper.mapper().createObjectNode();
361+
final ObjectNode bidderNode = TestBidRequestProvider.mapper.createObjectNode();
362+
final ObjectNode prebidNode = TestBidRequestProvider.mapper.createObjectNode();
370363
prebidNode.set("bidder", bidderNode);
371364

372-
final ObjectNode extNode = jacksonMapper.mapper().createObjectNode();
365+
final ObjectNode extNode = TestBidRequestProvider.mapper.createObjectNode();
373366
extNode.set("prebid", prebidNode);
374367
extNode.set("tid", TextNode.valueOf("67eaab5f-27a6-4689-93f7-bd8f024576e3"));
375368

@@ -432,6 +425,6 @@ private Result toResult(AnalyticsResult analyticsResult) {
432425
}
433426

434427
private ObjectNode toObjectNode(Map<String, Ortb2ImpExtResult> values) {
435-
return values != null ? jacksonMapper.mapper().valueToTree(values) : null;
428+
return values != null ? TestBidRequestProvider.mapper.valueToTree(values) : null;
436429
}
437430
}

0 commit comments

Comments
 (0)