diff --git a/src/main/java/org/prebid/server/bidder/onetag/OnetagBidder.java b/src/main/java/org/prebid/server/bidder/onetag/OnetagBidder.java index c7fa5589fb2..ec6c9718ea5 100644 --- a/src/main/java/org/prebid/server/bidder/onetag/OnetagBidder.java +++ b/src/main/java/org/prebid/server/bidder/onetag/OnetagBidder.java @@ -22,7 +22,6 @@ import org.prebid.server.util.BidderUtil; import org.prebid.server.util.HttpUtil; -import java.util.ArrayList; import java.util.Collection; import java.util.Collections; import java.util.List; @@ -45,20 +44,18 @@ public OnetagBidder(String endpointUrl, JacksonMapper mapper) { @Override public Result>> makeHttpRequests(BidRequest request) { - final List modifiedImps = new ArrayList<>(); String requestPubId = null; for (Imp imp : request.getImp()) { try { final ExtImpOnetag impExt = parseImpExt(imp); requestPubId = resolveAndValidatePubId(impExt.getPubId(), requestPubId); - - modifiedImps.add(imp.toBuilder().ext(impExt.getExt()).build()); } catch (PreBidException e) { return Result.withError(BidderError.badInput(e.getMessage())); } } - return Result.withValue(createRequest(request, modifiedImps, requestPubId)); + final String url = endpointUrl.replace(URL_PUBLISHER_ID_MACRO, StringUtils.defaultString(requestPubId)); + return Result.withValue(BidderUtil.defaultRequest(request, url, mapper)); } private ExtImpOnetag parseImpExt(Imp imp) { @@ -69,8 +66,8 @@ private ExtImpOnetag parseImpExt(Imp imp) { } } - private String resolveAndValidatePubId(String impExtPubId, String requestPubId) { - if (StringUtils.isEmpty(impExtPubId)) { + private static String resolveAndValidatePubId(String impExtPubId, String requestPubId) { + if (StringUtils.isBlank(impExtPubId)) { throw new PreBidException("The publisher ID must not be empty"); } if (requestPubId != null && !impExtPubId.equals(requestPubId)) { @@ -79,13 +76,6 @@ private String resolveAndValidatePubId(String impExtPubId, String requestPubId) return impExtPubId; } - private HttpRequest createRequest(BidRequest request, List imps, String pubId) { - final String url = endpointUrl.replace(URL_PUBLISHER_ID_MACRO, pubId); - final BidRequest outgoingRequest = request.toBuilder().imp(imps).build(); - - return BidderUtil.defaultRequest(outgoingRequest, url, mapper); - } - @Override public final Result> makeBids(BidderCall httpCall, BidRequest bidRequest) { try { diff --git a/src/test/java/org/prebid/server/bidder/onetag/OnetagBidderTest.java b/src/test/java/org/prebid/server/bidder/onetag/OnetagBidderTest.java index 0d742960bc1..73d6035303d 100644 --- a/src/test/java/org/prebid/server/bidder/onetag/OnetagBidderTest.java +++ b/src/test/java/org/prebid/server/bidder/onetag/OnetagBidderTest.java @@ -103,29 +103,6 @@ public void makeHttpRequestsShouldReturnErrorIfImpExtCanNotBeParsed() { assertThat(result.getValue()).isEmpty(); } - @Test - public void makeHttpRequestsShouldUpdateImpExt() { - // given - final ObjectNode oneTagExt = mapper.createObjectNode(); - oneTagExt.put("someField", "someName"); - final BidRequest bidRequest = BidRequest.builder() - .imp(singletonList(Imp.builder() - .ext(mapper.valueToTree(ExtPrebid.of(null, ExtImpOnetag.of("somePubId", oneTagExt)))) - .build())) - .build(); - - // when - final Result>> result = target.makeHttpRequests(bidRequest); - - // then - assertThat(result.getErrors()).isEmpty(); - assertThat(result.getValue()) - .extracting(HttpRequest::getPayload) - .flatExtracting(BidRequest::getImp) - .extracting(Imp::getExt) - .containsExactly(oneTagExt); - } - @Test public void makeHttpRequestsShouldReturnErrorIfPubIdNotPresent() { // given diff --git a/src/test/resources/org/prebid/server/it/openrtb2/onetag/test-onetag-bid-request.json b/src/test/resources/org/prebid/server/it/openrtb2/onetag/test-onetag-bid-request.json index 27f8b3dfba7..b0d37448267 100644 --- a/src/test/resources/org/prebid/server/it/openrtb2/onetag/test-onetag-bid-request.json +++ b/src/test/resources/org/prebid/server/it/openrtb2/onetag/test-onetag-bid-request.json @@ -12,8 +12,14 @@ "displaymanagerver": "2.0.0", "tagid": "possibleTagId", "ext": { - "key1": "value1", - "key2": "value2" + "tid": "${json-unit.any-string}", + "bidder": { + "pubId": "386276e072", + "ext": { + "key1": "value1", + "key2": "value2" + } + } } } ],