Repository URL to install this package:
|
Version:
3.8.1-rc0 ▾
|
import { getFirstExperimentId, getFirstGlobalExperimentId } from './index';
describe('selectors', () => {
describe('getFirstExperimentId', () => {
it('should return undefined if no mounted experiment is defined for state', () => {
const state = {};
const result = getFirstExperimentId(state);
expect(result).toBeUndefined();
});
it('should return undefined, if experiment exist but is not mounted', () => {
const state = {
ab: {
experiments: {
test: {
variant: 'a',
experimentId: 'id',
},
},
mountedExperiments: {},
},
};
const result = getFirstExperimentId(state);
expect(result).toBeUndefined();
});
it('should return the experimentId, if experiment exist and is mounted', () => {
const experimentId = 'id';
const state = {
ab: {
experiments: {
test: {
variant: 'a',
experimentId,
},
},
mountedExperiments: {
test: 'a',
},
},
};
const result = getFirstExperimentId(state, 'test');
expect(result).toBe(experimentId);
});
});
describe('getFirstGlobalExperimentId', () => {
it('should return undefined if no mounted experiment is defined for state', () => {
const state = {};
const result = getFirstGlobalExperimentId(state);
expect(result).toBeUndefined();
});
it('should return undefined, if experiment exist but is not global', () => {
const state = {
ab: {
experiments: {
test: {
variant: 'a',
experimentId: 'id',
isGlobal: false,
},
},
},
};
const result = getFirstGlobalExperimentId(state);
expect(result).toBeUndefined();
});
it('should return the experimentId, if experiment exist and is global', () => {
const experimentId = 'id';
const state = {
ab: {
experiments: {
test: {
variant: 'a',
isGlobal: true,
experimentId,
},
},
},
};
const result = getFirstGlobalExperimentId(state, 'test');
expect(result).toBe(experimentId);
});
});
});