Skip to content

Conversation

dxtech-git
Copy link

No description provided.

Copy link

Code coverage summary

Note:

  • Prebid team doesn't anticipate tests covering code paths that might result in marshal and unmarshal errors
  • Coverage summary encompasses all commits leading up to the latest one, 4c66e15

dxtech

Refer here for heat map coverage report

github.com/prebid/prebid-server/v3/adapters/dxtech/dxtech.go:28:	Builder		100.0%
github.com/prebid/prebid-server/v3/adapters/dxtech/dxtech.go:35:	MakeRequests	90.5%
github.com/prebid/prebid-server/v3/adapters/dxtech/dxtech.go:76:	MakeBids	100.0%
github.com/prebid/prebid-server/v3/adapters/dxtech/dxtech.go:114:	getBidType	100.0%
github.com/prebid/prebid-server/v3/adapters/dxtech/dxtech.go:123:	parseExt	100.0%
github.com/prebid/prebid-server/v3/adapters/dxtech/dxtech.go:143:	getHeaders	100.0%
total:									(statements)	97.1%

@SyntaxNode SyntaxNode changed the title Add new Adapter - DXTech New Adapter: DXTech Sep 4, 2025
Copy link
Contributor

@guscarreon guscarreon left a comment

Choose a reason for hiding this comment

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

Your adapter is not passing our validation scripts because gofmt needs to be run on the following files:

Run ./validate.sh --nofmt --cov --race 10
gofmt needs to be run, 6 files have issues.  Below is a list of files to review:
adapters/dxtech/dxtech.go
adapters/dxtech/dxtech_test.go
adapters/dxtech/params_test.go
exchange/adapter_builders.go
openrtb_ext/bidders.go
openrtb_ext/imp_dxtech.go

Can you run the gofmt command in your local folder before your next commit so validation passes and we can merge once approved?

"placementId": {
"type": "string",
"description": "The placement id"
}
Copy link
Contributor

Choose a reason for hiding this comment

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

The documentation pull request New adapter - DXTech #6230 mentions two additional parameters, bidfloor and bidfloorcur, that are not listed here. According to file dev-docs/bidders/dxtech.md:

Name Scope Description Example Type
placementId required Placement Id '1234abcd' string
publisherId required Publisher Id '12345' string
bidfloor optional Bid Floor 2.3 float
bidfloorcur optional Bid Floor Currency 'USD' string

Do we need to add them here? Or should they be removed from New adapter - DXTech #6230?

headers.Add("Accept", "application/json")
headers.Add("X-Openrtb-Version", "2.5")

if request.Site != nil {
Copy link
Contributor

Choose a reason for hiding this comment

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

Just to double-check: your adapter also supports app according to your static/bidder-info/dxtech.yaml file. If a given request comes with request.App and not request.Site, should any header, like maybe Origin, be added?

"httpCalls": [
{
"expectedRequest": {
"method": "GET",
Copy link
Contributor

Choose a reason for hiding this comment

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

Line 64 of adapters/dxtech/dxtech.go sets "method": "POST" to every outgoing request

63         adapterRequests = append(adapterRequests, &adapters.RequestData{
64             Method:  http.MethodPost,
65             Uri:     a.endpoint + "?" + params.Encode(),
66             Body:    body,
67             Headers: getHeaders(request),
68             ImpIDs:  openrtb_ext.GetImpIDs(request.Imp),
69         })
70     }
adapters/dxtech/dxtech.go

Therefore, the GET value seems to be incorrect here and in the following files:

adapters/dxtech/dxtechtest/exemplary/banner.json|36 col 9-24| "method": "GET",
adapters/dxtech/dxtechtest/exemplary/empty-site-domain-ref.json|38 col 9-24| "method": "GET",
adapters/dxtech/dxtechtest/exemplary/ipv6.json|38 col 9-24| "method": "GET",
adapters/dxtech/dxtechtest/exemplary/video-test-request.json|41 col 9-24| "method": "GET",
adapters/dxtech/dxtechtest/exemplary/video.json|40 col 9-24| "method": "GET",
adapters/dxtech/dxtechtest/supplemental/invalid-response.json|40 col 9-24| "method": "GET",
adapters/dxtech/dxtechtest/supplemental/no-mtype.json|40 col 9-24| "method": "GET",
adapters/dxtech/dxtechtest/supplemental/status-code-bad-request.json|40 col 9-24| "method": "GET",
adapters/dxtech/dxtechtest/supplemental/status-code-no-content.json|40 col 9-24| "method": "GET",
adapters/dxtech/dxtechtest/supplemental/status-code-other-error.json|40 col 9-24| "method": "GET",

On a sidenote, your adapter helped us catch a bug in our JSON esting framework as it is not asserting this field. We plan to correct that in a future PR. In the meantime, can we modify?

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

Successfully merging this pull request may close these issues.

2 participants