Repository navigation
AdPlayx: New Adapter - #4582
AdPlayx: New Adapter#4582anuraj700 wants to merge 10 commits into
Conversation
## Type of Change - [x] New bidder adapter - [ ] Bug fix - [ ] Feature / Enhancement - [ ] Documentation update ## Description This PR adds the **AdPlayx** bidder adapter implementation (`adplayx`) to Prebid Server Java, supporting ORTB 2.6 requests for Banner and Video inventory. ### Key Changes Made: - Added `AdplayxBidder.java` to handle request construction with query parameters (`apptoken`, `placementid`) and bid response parsing. - Added `ExtImpAdplayx.java` model for extracting adapter parameters. - Added bidder configuration (`adplayx.yaml`, `AdplayxConfiguration.java`). - Added parameter validation schema (`static/bidder-params/adplayx.json`). - Added unit test suite `AdplayxBidderTest.java` targeting >80% code coverage using JUnit 5 and AssertJ. ## Checklist - [x] Code passes `checkstyle:check` without line length or final modifier violations. - [x] Unit tests pass locally (`mvn test -Dtest=AdplayxBidderTest`). - [x] Parameters match JSON schema defined in `static/bidder-params/adplayx.json`. - [x] Added configuration in `bidder-config/adplayx.yaml`. ## Testing Instructions Run unit tests locally: ```bash mvn test -Dtest=AdplayxBidderTest
CTMBNara
left a comment
There was a problem hiding this comment.
Update branch with latest master. Use Uri.java instead of macros (it will encode all the params, so make sure to not double encode them).
- Remove {{apptoken}} macro template from bidder config
- Append apptoken and placementid dynamically using URIBuilder
- Update unit tests to verify parameter building and single-encoding behavior
…/prebid-server-java into adding-adapter-adplayx
Resolved the review comments. |
Replace org.apache.http.client.utils.URIBuilder with org.prebid.server.util.Uri in AdplayxBidder to eliminate the deprecated Apache HTTP client dependency. - Updated buildEndpointUrl() to use Uri.of() and addQueryParam() - Updated AdplayxBidderTest assertions to align with Vert.x UriTemplate encoding style
CTMBNara
left a comment
There was a problem hiding this comment.
Add integration test. Use AxisTest as an example
- Update URI parameter handling using Uri.of in constructor - Adopt standard stream-based bid parsing and BidderUtil.defaultRequest - Add AdplayxTest integration test suite
Added |
As per review comments - resolving the excess check
|
@anuraj700 pls fix checkstyle: |
@osulzhenko Fixed, Please review |
|
@anuraj700 Some of your integration and unit tests are failing |
|
@osulzhenko I have fixed unit as well as integration test. |
| if (httpCall.getResponse().getBody() == null) { | ||
| return Result.of(Collections.emptyList(), errors); | ||
| } |
|
@osulzhenko This failure seems unrelated. Can you please check |
|
The job failed because one functional test suite failed, and the workflow is configured to stop on any failed tests. What the log shows:
So the root cause is not a normal assertion failure in the app logic; it’s a Testcontainers/PostgreSQL environment startup problem. The job then ends with:
This is from the functional test workflow at:
In short: the job failed because the Postgres test container could not start, causing that single test to fail and the workflow to mark the job as failed. |
this is still in pending state and not merged
|
Type of Change
Description
This PR adds the AdPlayx bidder adapter implementation (
adplayx) to Prebid Server Java, supporting ORTB 2.6 requests for Banner and Video inventory.Key Changes Made:
AdplayxBidder.javato handle request construction with query parameters (apptoken,placementid) and bid response parsing.ExtImpAdplayx.javamodel for extracting adapter parameters.adplayx.yaml,AdplayxConfiguration.java).static/bidder-params/adplayx.json).AdplayxBidderTest.javatargeting >80% code coverage using JUnit 5 and AssertJ.Checklist
checkstyle:checkwithout line length or final modifier violations.mvn test -Dtest=AdplayxBidderTest).static/bidder-params/adplayx.json.bidder-config/adplayx.yaml.Testing Instructions
Run unit tests locally: