From 3dd9285c460a9ea9eeee24096db332d508d73c3c Mon Sep 17 00:00:00 2001 From: softcoder594 Date: Thu, 14 Aug 2025 21:59:05 +0200 Subject: [PATCH] optable-targeting: Fix query string construction when IDs are missing. --- .../server/hooks/modules/optable/targeting/model/Query.java | 5 ----- .../modules/optable/targeting/v1/core/QueryBuilderTest.java | 4 +++- 2 files changed, 3 insertions(+), 6 deletions(-) diff --git a/extra/modules/optable-targeting/src/main/java/org/prebid/server/hooks/modules/optable/targeting/model/Query.java b/extra/modules/optable-targeting/src/main/java/org/prebid/server/hooks/modules/optable/targeting/model/Query.java index 54980f12c33..20862050f39 100644 --- a/extra/modules/optable-targeting/src/main/java/org/prebid/server/hooks/modules/optable/targeting/model/Query.java +++ b/extra/modules/optable-targeting/src/main/java/org/prebid/server/hooks/modules/optable/targeting/model/Query.java @@ -1,7 +1,6 @@ package org.prebid.server.hooks.modules.optable.targeting.model; import lombok.Value; -import org.apache.commons.lang3.StringUtils; @Value(staticConstructor = "of") public class Query { @@ -11,10 +10,6 @@ public class Query { String attributes; public String toQueryString() { - if (StringUtils.isEmpty(ids) && !StringUtils.isEmpty(attributes)) { - return attributes.substring(1); - } - return ids + attributes; } } diff --git a/extra/modules/optable-targeting/src/test/java/org/prebid/server/hooks/modules/optable/targeting/v1/core/QueryBuilderTest.java b/extra/modules/optable-targeting/src/test/java/org/prebid/server/hooks/modules/optable/targeting/v1/core/QueryBuilderTest.java index e7212fb5884..606c76db4a2 100644 --- a/extra/modules/optable-targeting/src/test/java/org/prebid/server/hooks/modules/optable/targeting/v1/core/QueryBuilderTest.java +++ b/extra/modules/optable-targeting/src/test/java/org/prebid/server/hooks/modules/optable/targeting/v1/core/QueryBuilderTest.java @@ -39,6 +39,8 @@ public void shouldBuildFullQueryString() { // then assertThat(query.getIds()).isEqualTo("&id=e%3Aemail&id=p%3A123"); assertThat(query.getAttributes()).isEqualTo("&gdpr_consent=tcf&gdpr=1&timeout=100ms"); + assertThat(query.toQueryString()) + .isEqualTo("&id=e%3Aemail&id=p%3A123&gdpr_consent=tcf&gdpr=1&timeout=100ms"); } @Test @@ -94,7 +96,7 @@ public void shouldBuildQueryStringWhenIdsListIsEmptyAndIpIsPresent() { // then assertThat(query).isNotNull(); - assertThat(query.toQueryString()).isEqualTo("gdpr=0"); + assertThat(query.toQueryString()).isEqualTo("&gdpr=0"); } @Test