Skip to content

Commit 487a749

Browse files
committed
Fix default value of targeting.hb_pb
1 parent fa13078 commit 487a749

3 files changed

Lines changed: 18 additions & 5 deletions

File tree

src/main/java/org/prebid/server/auction/CpmRange.java

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
package org.prebid.server.auction;
22

33
import org.apache.commons.lang3.ObjectUtils;
4-
import org.apache.commons.lang3.StringUtils;
54
import org.prebid.server.proto.openrtb.ext.request.ExtGranularityRange;
65
import org.prebid.server.settings.model.Account;
76
import org.prebid.server.settings.model.AccountAuctionConfig;
@@ -19,6 +18,8 @@
1918
*/
2019
public class CpmRange {
2120

21+
public static final String DEFAULT_CPM = "0.0";
22+
2223
private static final Locale LOCALE = Locale.US;
2324
private static final int DEFAULT_PRECISION = 2;
2425

@@ -30,7 +31,7 @@ private CpmRange() {
3031
*/
3132
public static String fromCpm(BigDecimal cpm, PriceGranularity priceGranularity, Account account) {
3233
final BigDecimal value = fromCpmAsNumber(cpm, priceGranularity, account);
33-
return value != null ? format(value, priceGranularity.getPrecision()) : StringUtils.EMPTY;
34+
return value != null ? format(value, priceGranularity.getPrecision()) : DEFAULT_CPM;
3435
}
3536

3637
/**

src/main/java/org/prebid/server/auction/TargetingKeywordsCreator.java

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -77,8 +77,6 @@ public class TargetingKeywordsCreator {
7777
*/
7878
private static final String FORMAT_KEY = "_format";
7979

80-
private static final String DEFAULT_CPM = "0.0";
81-
8280
private final PriceGranularity priceGranularity;
8381
private final boolean includeWinners;
8482
private final boolean includeBidderKeys;
@@ -204,7 +202,7 @@ private Map<String, String> makeFor(String bidder,
204202

205203
final String roundedCpm = isPriceGranularityValid()
206204
? CpmRange.fromCpm(price, priceGranularity, account)
207-
: DEFAULT_CPM;
205+
: CpmRange.DEFAULT_CPM;
208206

209207
keywordMap.put(this.keyPrefix + PB_KEY, roundedCpm);
210208

src/test/java/org/prebid/server/auction/CpmRangeTest.java

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,20 @@
2121

2222
public class CpmRangeTest {
2323

24+
@Test
25+
public void fromCpmShouldReturnZeroValueIfPriceDoesNotFitToRange() {
26+
// given
27+
final PriceGranularity priceGranularity = createFromExtPriceGranularity(
28+
ExtPriceGranularity.of(null, singletonList(ExtGranularityRange.of(BigDecimal.valueOf(3),
29+
BigDecimal.valueOf(0.01)))));
30+
31+
// when
32+
final String result = CpmRange.fromCpm(BigDecimal.valueOf(-2.0), priceGranularity, givenAccount());
33+
34+
// then
35+
assertThat(result).isEqualTo("0.0");
36+
}
37+
2438
@Test
2539
public void fromCpmShouldReturnMaxRangeIfCpmExceedsIt() {
2640
assertThat(CpmRange.fromCpm(BigDecimal.valueOf(21), createFromString("auto"), givenAccount()))

0 commit comments

Comments
 (0)