Skip to content

Commit

Permalink
TheMediaGrid: added ext.bidder.grid.demandSource processing (prebid#7179
Browse files Browse the repository at this point in the history
)

* Added TheMediaGridNM Bid Adapter

* Updated required params for TheMediaGridNM Bid Adapter

* Update TheMediGridNM Bid Adapter

* Fix tests for TheMediaGridNM Bid Adapter

* Fixes after review for TheMediaGridNM Bid Adapter

* Add support of multi-format in TheMediaGrid Bid Adapter

* Update sync url for grid and gridNM Bid Adapters

* TheMediaGrid Bid Adapter: added keywords adUnit parameter

* Update TheMediaGrid Bid Adapter to support keywords from config

* Implement new request format for TheMediaGrid Bid Adapter

* Fix jwpseg params for TheMediaGrid Bid Adapter

* Update unit tests for The Media Grid Bid Adapter

* Fix typo in TheMediaGrid Bid Adapter

* Added test for jwTargeting in TheMediaGrid Bid Adapter

* The new request format was made by default in TheMediaGrid Bid Adapter

* Update userId format in ad request for TheMediaGrid Bid Adapter

* Added bidFloor parameter for TheMediaGrid Bid Adapter

* Fix for review TheMediaGrid Bid Adapter

* Support floorModule in TheMediaGrid Bid Adapter

* Fix empty bidfloor for TheMediaGrid Bid Adapter

* Some change to restart autotests

* Fix userIds format for TheMediaGrid Bid Adapter

* Remove digitrust userId from TheMediaGrid Bid Adapter

* Protocols was added in video section in ad request for TheMediaGrid Bid Adapter

* TheMediaGrid: fix trouble with alias using

* TheMediaGridNM: fix trouble with alias

* TheMediaGrid Bid Adapter: added support of PBAdSlot module

* TheMediaGrid Bid Adapter: fix typo

* GridNM Bid Adapter: use absent in params data from mediaTypes

* GridNM Bid Adapter: fix md file + add advertiserDomains support

* TheMediaGrid and gridNM Bid Adapter: minor netRevenue fixes

* gridNM Bid Adapter updates after review

* TheMediaGrid Bid Adapter: fix keywords workflow

* fix testing and kick off lgtm again

* TheMediaGrid: added ext.bidder.grid.demandSource processing

Co-authored-by: Chris Huie <phoenixtechnerd@gmail.com>
  • Loading branch information
2 people authored and agrandes-tappx committed Sep 29, 2021
1 parent 35e02dc commit 8c4b16e
Show file tree
Hide file tree
Showing 2 changed files with 66 additions and 0 deletions.
4 changes: 4 additions & 0 deletions modules/gridBidAdapter.js
Original file line number Diff line number Diff line change
Expand Up @@ -362,6 +362,10 @@ function _addBidResponse(serverBid, bidRequest, bidResponses) {
dealId: serverBid.dealid
};

if (serverBid.ext && serverBid.ext.bidder && serverBid.ext.bidder.grid && serverBid.ext.bidder.grid.demandSource) {
bidResponse.adserverTargeting = { 'hb_ds': serverBid.ext.bidder.grid.demandSource };
}

if (serverBid.content_type === 'video') {
bidResponse.vastXml = serverBid.adm;
bidResponse.mediaType = VIDEO;
Expand Down
62 changes: 62 additions & 0 deletions test/spec/modules/gridBidAdapter_spec.js
Original file line number Diff line number Diff line change
Expand Up @@ -985,6 +985,68 @@ describe('TheMediaGrid Adapter', function () {
const result = spec.interpretResponse({'body': {'seatbid': fullResponse}}, request);
expect(result).to.deep.equal(expectedResponse);
});

it('response with ext.bidder.grid.demandSource', function () {
const bidRequests = [
{
'bidder': 'grid',
'params': {
'uid': '1'
},
'adUnitCode': 'adunit-code-1',
'sizes': [[300, 250], [300, 600]],
'bidId': '26d6f897b516',
'bidderRequestId': '5f2009617a7c0a',
'auctionId': '1cbd2feafe5e8b',
}
];
const serverResponse = {
'bid': [
{
'impid': '26d6f897b516',
'price': 1.15,
'adm': '<div>test content 1</div>',
'auid': 1,
'h': 250,
'w': 300,
'dealid': 11,
'ext': {
'bidder': {
'grid': {
'demandSource': 'someValue'
}
}
}
}
],
'seat': '1'
};
const request = spec.buildRequests(bidRequests);
const expectedResponse = [
{
'requestId': '26d6f897b516',
'cpm': 1.15,
'creativeId': 1,
'dealId': 11,
'width': 300,
'height': 250,
'ad': '<div>test content 1</div>',
'currency': 'USD',
'mediaType': 'banner',
'netRevenue': true,
'ttl': 360,
'meta': {
advertiserDomains: []
},
'adserverTargeting': {
'hb_ds': 'someValue'
}
}
];

const result = spec.interpretResponse({'body': {'seatbid': [serverResponse]}}, request);
expect(result).to.deep.equal(expectedResponse);
});
});

describe('user sync', function () {
Expand Down

0 comments on commit 8c4b16e

Please sign in to comment.