Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Test: Transition PAAPI parameters #3634

Open
wants to merge 12 commits into
base: feature/paa
Choose a base branch
from

Conversation

marki1an
Copy link
Collaborator

@marki1an marki1an commented Dec 16, 2024

🔧 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?

@marki1an marki1an added tests Functional or other tests do not merge Not the time for merging yet labels Dec 16, 2024
@marki1an
Copy link
Collaborator Author

Corresponding issue prebid/prebid-server#3536

@osulzhenko
Copy link
Collaborator

Required update

@osulzhenko osulzhenko changed the base branch from master to feature/paa January 10, 2025 08:47
@marki1an marki1an removed the do not merge Not the time for merging yet label Jan 14, 2025
Copy link
Collaborator

@osulzhenko osulzhenko left a comment

Choose a reason for hiding this comment

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

we additionaly should verify:

  • that aliases can request both original and iab formats.
  • that if impId from configs and impId from the response are mismatched (including wildcards), nothing happens.
  • that warnings are issued in debug mode, alert.general metrics are emitted.
  • that interestGroupAuctionBuyer is ignored when provided by a bidder.
  • that the server defaults to the original format if ext.prebid.paaformat is not set or is invalid.
  • ensure that empty igs or igi arrays do not cause crashes or errors.

Copy link
Collaborator

@osulzhenko osulzhenko left a comment

Choose a reason for hiding this comment

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

we should also cover:
If there's no impid, then drop any igb objects from this entry. If any were dropped, mmit a warning in debug mode, log at N% sampling, and emit an alert.general metric.
and

Loop through the igb array
Add ext.bidder and ext.adapter to the igb entry
Add the igb entry to the global response entry

Rest is looking fine

def auctionConfigs = response.ext?.prebid?.fledge?.auctionConfigs
assert auctionConfigs?.size() == 1
assert auctionConfigs[0].impId == impId
assert auctionConfigs[0].bidder == bidResponse.seatbid[0].seat.value
Copy link
Collaborator

Choose a reason for hiding this comment

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

Can we replace this with:
assert auctionConfigs[0].bidder == OPENX_ALIAS
Easier to identify :)

Comment on lines +467 to +468
interestGroupAuctionSeller: [new InterestGroupAuctionSeller()],
interestGroupAuctionBuyer: [new InterestGroupAuctionBuyer()]
Copy link
Collaborator

Choose a reason for hiding this comment

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

can we also add [] option?

def interestGroupAuctionSeller = response.ext.interestGroupAuctionIntent[0].interestGroupAuctionSeller[0]
assert interestGroupAuctionSeller.impId == impId
assert interestGroupAuctionSeller.config == fledgeConfig
assert interestGroupAuctionSeller.ext.bidder == bidResponse.seatbid[0].seat.value
Copy link
Collaborator

Choose a reason for hiding this comment

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

assert interestGroupAuctionSeller.ext.bidder == OPENX_ALIAS

fledgeImpId << [PBSUtils.randomString, PBSUtils.randomNumber as String, WILDCARD.value]
}

def "PBS should log error and not populated fledge impId when bidder respond with empty config"() {
Copy link
Collaborator

Choose a reason for hiding this comment

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

not an empty config, but an empty impid

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
tests Functional or other tests
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants