| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586 |
- import { expect } from 'chai'
- import { createLocalizedGroupPlanPrice } from '../../../../frontend/js/features/plans/utils/group-plan-pricing'
- describe('group-plan-pricing', function () {
- beforeEach(function () {
- window.metaAttributesCache = window.metaAttributesCache || new Map()
- window.metaAttributesCache.set('ol-groupPlans', {
- enterprise: {
- professional: {
- CHF: {
- 2: {
- price_in_cents: 10000,
- },
- },
- DKK: {
- 2: {
- price_in_cents: 20000,
- },
- },
- USD: {
- 2: {
- price_in_cents: 30000,
- },
- },
- },
- },
- })
- window.metaAttributesCache.set('ol-currencySymbols', {
- CHF: 'Fr',
- DKK: 'kr',
- USD: '$',
- })
- })
- afterEach(function () {
- window.metaAttributesCache = new Map()
- })
- describe('createLocalizedGroupPlanPrice', function () {
- describe('CHF currency', function () {
- it('should return the correct localized price', function () {
- const localizedGroupPlanPrice = createLocalizedGroupPlanPrice({
- plan: 'professional',
- currency: 'CHF',
- licenseSize: '2',
- usage: 'enterprise',
- })
- expect(localizedGroupPlanPrice).to.deep.equal({
- localizedPrice: 'Fr 100',
- localizedPerUserPrice: 'Fr 50',
- })
- })
- })
- describe('DKK currency', function () {
- it('should return the correct localized price', function () {
- const localizedGroupPlanPrice = createLocalizedGroupPlanPrice({
- plan: 'professional',
- currency: 'DKK',
- licenseSize: '2',
- usage: 'enterprise',
- })
- expect(localizedGroupPlanPrice).to.deep.equal({
- localizedPrice: '200 kr',
- localizedPerUserPrice: '100 kr',
- })
- })
- })
- describe('other supported currencies', function () {
- it('should return the correct localized price', function () {
- const localizedGroupPlanPrice = createLocalizedGroupPlanPrice({
- plan: 'professional',
- currency: 'USD',
- licenseSize: '2',
- usage: 'enterprise',
- })
- expect(localizedGroupPlanPrice).to.deep.equal({
- localizedPrice: '$300',
- localizedPerUserPrice: '$150',
- })
- })
- })
- })
- })
|