UNPKG

flipr

Version:

Feature flipping and configuration using yaml files, etcd, or other flipr sources

39 lines (37 loc) 1.1 kB
const executeRuleEqual = require('./execute-rule-equal'); describe('execute-rule-equal', () => { it('returns undefined if no match is found', () => { const rule = { property: 'favoriteColor', }; expect(executeRuleEqual('green', rule, [ { value: 1, otherRule: 'a' }, { value: 2, favoriteColor: 'blue' }, ])).toBe(undefined); }); it('returns value when input is matches rule', () => { const rule = { property: 'favoriteColor', }; expect(executeRuleEqual('purple', rule, [ { value: 1, favoriteColor: 'purple' }, ])).toBe(1); }); it('is case insensitive by default', () => { const rule = { property: 'favoriteColor', }; expect(executeRuleEqual('purple', rule, [ { value: 1, favoriteColor: 'PURPLE' }, ])).toBe(1); }); it('uses case sensitive match if rule is case sensitive', () => { const rule = { property: 'favoriteColor', isCaseSensitive: true, }; expect(executeRuleEqual('black', rule, [ { value: 1, favoriteColor: 'BLACK' }, ])).toBe(undefined); }); });