UNPKG

mk9-prebid

Version:

Header Bidding Management Library

95 lines (82 loc) 2.8 kB
import { addSegmentData, getSegmentsAndCategories, sirdataSubmodule } from 'modules/sirdataRtdProvider.js'; import { server } from 'test/mocks/xhr.js'; const responseHeader = {'Content-Type': 'application/json'}; describe('sirdataRtdProvider', function() { describe('sirdataSubmodule', function() { it('successfully instantiates', function () { expect(sirdataSubmodule.init()).to.equal(true); }); }); describe('Add Segment Data', function() { it('adds segment data', function() { const config = { params: { setGptKeyValues: false, contextualMinRelevancyScore: 50, bidders: [{ bidder: 'appnexus' }, { bidder: 'other' }] } }; let adUnits = [ { bids: [{ bidder: 'appnexus', params: { placementId: 13144370 } }, { bidder: 'other' }] } ]; let data = { segments: [111111, 222222], contextual_categories: {'333333': 100} }; addSegmentData(adUnits, data, config, () => {}); expect(adUnits[0].bids[0].params.keywords).to.have.deep.property('sd_rtd', ['111111', '222222', '333333']); expect(adUnits[0].bids[1].ortb2.site.ext.data).to.have.deep.property('sd_rtd', ['333333']); expect(adUnits[0].bids[1].ortb2.user.ext.data).to.have.deep.property('sd_rtd', ['111111', '222222']); }); }); describe('Get Segments And Categories', function() { it('gets data from async request and adds segment data', function() { const config = { params: { setGptKeyValues: false, contextualMinRelevancyScore: 50, bidders: [{ bidder: 'appnexus' }, { bidder: 'other' }] } }; let reqBidsConfigObj = { adUnits: [{ bids: [{ bidder: 'appnexus', params: { placementId: 13144370 } }, { bidder: 'other' }] }] }; let data = { segments: [111111, 222222], contextual_categories: {'333333': 100} }; getSegmentsAndCategories(reqBidsConfigObj, () => {}, config, {}); let request = server.requests[0]; request.respond(200, responseHeader, JSON.stringify(data)); expect(reqBidsConfigObj.adUnits[0].bids[0].params.keywords).to.have.deep.property('sd_rtd', ['111111', '222222', '333333']); expect(reqBidsConfigObj.adUnits[0].bids[1].ortb2.site.ext.data).to.have.deep.property('sd_rtd', ['333333']); expect(reqBidsConfigObj.adUnits[0].bids[1].ortb2.user.ext.data).to.have.deep.property('sd_rtd', ['111111', '222222']); }); }); });