Skip to content

Conversation

@osulzhenko
Copy link
Collaborator

@osulzhenko osulzhenko commented Dec 4, 2025

🔧 Type of changes

  • new bid adapter
  • bid adapter update
  • new feature
  • new analytics adapter
  • new module
  • module update
  • bugfix
  • documentation
  • configuration
  • dependency update
  • tech debt (test coverage, refactorings, etc.)

✨ What's the context?

What's the context for the changes?

🧠 Rationale behind the change

Why did you choose to make these changes? Were there any trade-offs you had to consider?

🔎 New Bid Adapter Checklist

  • verify email contact works
  • NO fully dynamic hostnames
  • geographic host parameters are NOT required
  • direct use of HTTP is prohibited - implement an existing Bidder interface that will do all the job
  • if the ORTB is just forwarded to the endpoint, use the generic adapter - define the new adapter as the alias of the generic adapter
  • cover an adapter configuration with an integration test

🧪 Test plan

How do you know the changes are safe to ship to production?

🏎 Quality check

  • Are your changes following our code style guidelines?
  • Are there any breaking changes in your code?
  • Does your test coverage exceed 90%?
  • Are there any erroneous console logs, debuggers or leftover code in your changes?

@osulzhenko osulzhenko requested a review from marki1an December 4, 2025 12:25
@osulzhenko osulzhenko self-assigned this Dec 4, 2025
@osulzhenko osulzhenko added tests Functional or other tests do not port labels Dec 4, 2025
@github-actions
Copy link

github-actions bot commented Dec 4, 2025

TestsPassed ✅Skipped ⚠️Failed
JUnit Test Report9058 ran9056 passed2 skipped0 failed

Copy link
Collaborator

@marki1an marki1an left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Comments applicable to other cases.


static DataActivity fromGppDataActivity(GppDataActivity gppActivity) {
if (gppActivity == null) {
return INVALID;
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Don't need semicolon here.

Comment on lines 9 to 13
NOTICE_NOT_PROVIDED(2),
NO_CONSENT(1),
CONSENT(2),
INVALID(-1),
INVALID(-1)
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please reorder your number without duplication.

Comment on lines 19 to 29
switch (gppActivity) {
case GppDataActivity.NOT_APPLICABLE:
return NOT_APPLICABLE
case GppDataActivity.NO_CONSENT:
return NO_CONSENT
case GppDataActivity.CONSENT:
return CONSENT
default:
return INVALID
}
}
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

In general, looks weird. Please consider removing the current enum.

Comment on lines 55 to 56
enum ConfigCase {
CAMEL_CASE, KEBAB_CASE, SNAKE_CASE
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I propose to move into the core model. In future, we can also reuse this functionality.

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actual

Comment on lines 717 to 700
accountGppConfig << [
new AccountGppConfig(code: IAB_US_GENERAL, enabled: false),
new AccountGppConfig(code: IAB_US_GENERAL, config: new GppModuleConfig(skipSids: [US_NAT_V1]), enabled: true)
]
accountGppConfig << [new AccountGppConfig(code: IAB_US_GENERAL, enabled: false),
new AccountGppConfig(code: IAB_US_GENERAL, config: new GppModuleConfig(skipSids: [US_NAT_V1]), enabled: true)]
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

same here

new UsNatV1Consent.Builder().setPersonalDataConsents(GppDataActivity.CONSENT).build() | [new EqualityValueRule(GPC, NOTICE_PROVIDED),
new EqualityValueRule(PERSONAL_DATA_CONSENTS, NOTICE_NOT_PROVIDED)]
gppConsent | valueRules
new UsNatV1Consent.Builder().setPersonalDataConsents(CONSENT).build() | [new EqualityValueRule(PERSONAL_DATA_CONSENTS, DataActivity.NOTICE_NOT_PROVIDED)]
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

DataActivity static import?

Comment on lines -1402 to -1407
disallowGppLogic << [
SIMPLE_GPC_DISALLOW_LOGIC,
new UsNatV1Consent.Builder()
.setMspaServiceProviderMode(MspaMode.YES)
.setMspaOptOutOptionMode(MspaMode.NO)
.build(),
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Let's create a rule to format this?

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We need to define one standard for all tests with the best practices

Comment on lines 587 to 588
def sensitiveData
def consentBuilder
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please use proper Obj instead of def

Comment on lines 623 to 624
def childSensitiveData
def consentBuilder
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Same here

@osulzhenko osulzhenko requested a review from marki1an December 5, 2025 12:02
@@ -1,3 +1,3 @@
package org.prebid.server.functional.model.privacy.gpp

import org.prebid.server.functional.util.PBSUtils
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please remove unused imports, same for others

marki1an
marki1an previously approved these changes Dec 5, 2025
@osulzhenko osulzhenko assigned marki1an and unassigned osulzhenko Dec 8, 2025
@CTMBNara CTMBNara merged commit 5ebc21f into master Dec 9, 2025
9 checks passed
@CTMBNara CTMBNara deleted the functional-tests/update-gpp-tests branch December 9, 2025 00:24
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

do not port tests Functional or other tests

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants