Home Reference Source

src/headerbidding/headerbidding.test.js

import { jest } from '@jest/globals' // eslint-disable-line
import Headerbidding from './headerbidding.js'

// Prepare

// const pkg = new CpexPackage()
const hb = new Headerbidding({ settings: {} })

// Test cases, based on example table here:
// https://docs.google.com/spreadsheets/d/1lnAnKost7KoHCGGRVlaDdjU0JnsqiWc0rHdMXsK1hoI/edit#gid=20767458
test('price bucket calculation should return expected values', () => {
  expect(hb.calculateCustomBuckets({ cpm: 1 })).toEqual(1)
  expect(hb.calculateCustomBuckets({ cpm: 4.4 })).toEqual(1)
  expect(hb.calculateCustomBuckets({ cpm: 5.5 })).toEqual(1)
  expect(hb.calculateCustomBuckets({ cpm: 6.6 })).toEqual(1)
  expect(hb.calculateCustomBuckets({ cpm: 7.7 })).toEqual(1)
  expect(hb.calculateCustomBuckets({ cpm: 8.8 })).toEqual(2)
  expect(hb.calculateCustomBuckets({ cpm: 11 })).toEqual(4)
  expect(hb.calculateCustomBuckets({ cpm: 12.1 })).toEqual(5)
  expect(hb.calculateCustomBuckets({ cpm: 13.2 })).toEqual(6)
  expect(hb.calculateCustomBuckets({ cpm: 15.4 })).toEqual(6)
  expect(hb.calculateCustomBuckets({ cpm: 17.6 })).toEqual(7)
  expect(hb.calculateCustomBuckets({ cpm: 19.8 })).toEqual(8)
  expect(hb.calculateCustomBuckets({ cpm: 22 })).toEqual(8)
  expect(hb.calculateCustomBuckets({ cpm: 26.4 })).toEqual(9)
  expect(hb.calculateCustomBuckets({ cpm: 30.8 })).toEqual(10)
  expect(hb.calculateCustomBuckets({ cpm: 35.2 })).toEqual(10)
  expect(hb.calculateCustomBuckets({ cpm: 39.6 })).toEqual(11)
  expect(hb.calculateCustomBuckets({ cpm: 44 })).toEqual(11)
  expect(hb.calculateCustomBuckets({ cpm: 55 })).toEqual(12)
  expect(hb.calculateCustomBuckets({ cpm: 66 })).toEqual(12)
  expect(hb.calculateCustomBuckets({ cpm: 77 })).toEqual(13)
  expect(hb.calculateCustomBuckets({ cpm: 88 })).toEqual(13)
  expect(hb.calculateCustomBuckets({ cpm: 99 })).toEqual(14)
  expect(hb.calculateCustomBuckets({ cpm: 110 })).toEqual(14)
  expect(hb.calculateCustomBuckets({ cpm: 132 })).toEqual(15)
  expect(hb.calculateCustomBuckets({ cpm: 154 })).toEqual(15)
  expect(hb.calculateCustomBuckets({ cpm: 176 })).toEqual(16)
  expect(hb.calculateCustomBuckets({ cpm: 198 })).toEqual(16)
  expect(hb.calculateCustomBuckets({ cpm: 300 })).toEqual(16)
})