UNPKG

mk9-prebid

Version:

Header Bidding Management Library

133 lines (118 loc) 5.31 kB
describe('Publisher API _ AdUnits', function () { var assert = require('chai').assert; var expect = require('chai').expect; var pbjsTestOnly = require('../helpers/pbjs-test-only').pbjsTestOnly; before(function () { var adUnits = [{ code: '/1996833/slot-1', sizes: [[300, 250], [728, 90]], bids: [ { bidder: 'openx', params: { pgid: '2342353', unit: '234234', jstag_url: 'http://' } }, { bidder: 'appnexus', params: { placementId: '234235' } } ] }, { fpd: { context: { pbAdSlot: 'adSlotTest', data: { inventory: [4], keywords: 'foo,bar', visitor: [1, 2, 3], } } }, code: '/1996833/slot-2', sizes: [[468, 60]], bids: [ { bidder: 'rubicon', params: { rp_account: '4934', rp_site: '13945', rp_zonesize: '23948-15' } }, { bidder: 'appnexus', params: { placementId: '827326' } } ] }]; pbjsTestOnly.clearAllAdUnits(); $$PREBID_GLOBAL$$.addAdUnits(adUnits); }); after(function () { pbjsTestOnly.clearAllAdUnits(); }); describe('addAdUnits', function () { var adUnits, adUnit1, bids1, adUnit2, bids2; it('should have two adUnits', function () { adUnits = pbjsTestOnly.getAdUnits(); adUnit1 = adUnits[0]; bids1 = adUnit1.bids; adUnit2 = adUnits[1]; bids2 = adUnit2.bids; }); it('the first adUnits value should be same with the adUnits that is added by $$PREBID_GLOBAL$$.addAdUnits();', function () { assert.strictEqual(adUnit1.code, '/1996833/slot-1', 'adUnit1 code'); assert.deepEqual(adUnit1.sizes, [[300, 250], [728, 90]], 'adUnit1 sizes'); assert.strictEqual(bids1[0].bidder, 'openx', 'adUnit1 bids1 bidder'); assert.strictEqual(bids1[0].params.pgid, '2342353', 'adUnit1 bids1 params.pgid'); assert.strictEqual(bids1[0].params.unit, '234234', 'adUnit1 bids1 params.unit'); assert.strictEqual(bids1[0].params.jstag_url, 'http://', 'adUnit1 bids1 params.jstag_url'); assert.strictEqual(bids1[1].bidder, 'appnexus', 'adUnit1 bids2 bidder'); assert.strictEqual(bids1[1].params.placementId, '234235', 'adUnit1 bids2 params.placementId'); assert.strictEqual(adUnit2.code, '/1996833/slot-2', 'adUnit2 code'); assert.deepEqual(adUnit2.sizes, [[468, 60]], 'adUnit2 sizes'); assert.strictEqual(bids2[0].bidder, 'rubicon', 'adUnit2 bids1 bidder'); assert.strictEqual(bids2[0].params.rp_account, '4934', 'adUnit2 bids1 params.rp_account'); assert.strictEqual(bids2[0].params.rp_zonesize, '23948-15', 'adUnit2 bids1 params.rp_zonesize'); assert.strictEqual(bids2[0].params.rp_site, '13945', 'adUnit2 bids1 params.rp_site'); assert.strictEqual(bids2[1].bidder, 'appnexus', 'adUnit2 bids2 bidder'); assert.strictEqual(bids2[1].params.placementId, '827326', 'adUnit2 bids2 params.placementId'); }); it('the second adUnits value should be same with the adUnits that is added by $$PREBID_GLOBAL$$.addAdUnits();', function () { assert.strictEqual(adUnit2.code, '/1996833/slot-2', 'adUnit2 code'); assert.deepEqual(adUnit2.sizes, [[468, 60]], 'adUnit2 sizes'); assert.deepEqual(adUnit2['ortb2Imp'], {'ext': {'data': {'pbadslot': 'adSlotTest', 'inventory': [4], 'keywords': 'foo,bar', 'visitor': [1, 2, 3]}}}, 'adUnit2 ortb2Imp'); assert.strictEqual(bids2[0].bidder, 'rubicon', 'adUnit2 bids1 bidder'); assert.strictEqual(bids2[0].params.rp_account, '4934', 'adUnit2 bids1 params.rp_account'); assert.strictEqual(bids2[0].params.rp_zonesize, '23948-15', 'adUnit2 bids1 params.rp_zonesize'); assert.strictEqual(bids2[0].params.rp_site, '13945', 'adUnit2 bids1 params.rp_site'); assert.strictEqual(bids2[1].bidder, 'appnexus', 'adUnit2 bids2 bidder'); assert.strictEqual(bids2[1].params.placementId, '827326', 'adUnit2 bids2 params.placementId'); }); }); describe('removeAdUnit', function () { var adUnits, adUnit2, bids2; it('the first adUnit should be not existed', function () { $$PREBID_GLOBAL$$.removeAdUnit('/1996833/slot-1'); adUnits = pbjsTestOnly.getAdUnits(); adUnit2 = adUnits[0]; bids2 = adUnit2.bids; expect(adUnits[1]).not.exist; }); it('the second adUnit should be still existed', function () { assert.strictEqual(adUnit2.code, '/1996833/slot-2', 'adUnit2 code'); assert.deepEqual(adUnit2.sizes, [[468, 60]], 'adUnit2 sizes'); assert.strictEqual(bids2[0].bidder, 'rubicon', 'adUnit2 bids1 bidder'); assert.strictEqual(bids2[0].params.rp_account, '4934', 'adUnit2 bids1 params.rp_account'); assert.strictEqual(bids2[0].params.rp_zonesize, '23948-15', 'adUnit2 bids1 params.rp_zonesize'); assert.strictEqual(bids2[0].params.rp_site, '13945', 'adUnit2 bids1 params.rp_site'); assert.strictEqual(bids2[1].bidder, 'appnexus', 'adUnit2 bids2 bidder'); assert.strictEqual(bids2[1].params.placementId, '827326', 'adUnit2 bids2 params.placementId'); }); }); });