[ { "name": "no conditions, inactive default variation", "flag": { "conditions": [], "defaultVariation": { "active": false, "value": "foo" } }, "context": {}, "expected": { "active": false, "value": null } }, { "name": "no conditions, active default variation", "flag": { "conditions": [], "defaultVariation": { "active": true, "value": "foo" } }, "context": {}, "expected": { "active": true, "value": "foo" } }, { "name": "one condition, inactive variation", "flag": { "conditions": [ { "rules": [ { "key": "foo", "negate": false, "operator": "EMPTY" } ], "variation": { "active": false, "value": "bar" } } ], "defaultVariation": { "active": true, "value": "foo" } }, "context": {}, "expected": { "active": false, "value": null } }, { "name": "one condition, active variation", "flag": { "conditions": [ { "rules": [ { "key": "foo", "negate": false, "operator": "EMPTY" } ], "variation": { "active": true, "value": "bar" } } ], "defaultVariation": { "active": true, "value": "foo" } }, "context": {}, "expected": { "active": true, "value": "bar" } }, { "name": "one condition, invalid rule", "flag": { "conditions": [ { "rules": [ { "key": "foo", "negate": true, "operator": "EMPTY" } ], "variation": { "active": true, "value": "bar" } } ], "defaultVariation": { "active": true, "value": "foo" } }, "context": {}, "expected": { "active": true, "value": "foo" } }, { "name": "multiple conditions, first valid and active", "flag": { "conditions": [ { "rules": [ { "key": "foo", "negate": false, "operator": "EMPTY" } ], "variation": { "active": true, "value": null } }, { "rules": [ { "key": "foo", "negate": false, "operator": "EMPTY" } ], "variation": { "active": false, "value": null } } ], "defaultVariation": { "active": true, "value": "foo" } }, "context": {}, "expected": { "active": true, "value": null } }, { "name": "multiple conditions, second valid and inactive", "flag": { "conditions": [ { "rules": [ { "key": "foo", "negate": true, "operator": "EMPTY" } ], "variation": { "active": true, "value": null } }, { "rules": [ { "key": "foo", "negate": false, "operator": "EMPTY" } ], "variation": { "active": false, "value": null } } ], "defaultVariation": { "active": true, "value": "foo" } }, "context": {}, "expected": { "active": false, "value": null } }, { "name": "multiple conditions, all invalid", "flag": { "conditions": [ { "rules": [ { "key": "foo", "negate": true, "operator": "EMPTY" } ], "variation": { "active": true, "value": null } }, { "rules": [ { "key": "foo", "negate": true, "operator": "EMPTY" } ], "variation": { "active": false, "value": null } } ], "defaultVariation": { "active": true, "value": "foo" } }, "context": {}, "expected": { "active": true, "value": "foo" } }, { "name": "no rules", "flag": { "conditions": [ { "rules": [], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": {}, "expected": { "active": true, "value": true } }, { "name": "one rule, valid", "flag": { "conditions": [ { "rules": [ { "key": "foo", "negate": false, "operator": "EMPTY" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": {}, "expected": { "active": true, "value": true } }, { "name": "one rule, invalid", "flag": { "conditions": [ { "rules": [ { "key": "foo", "negate": true, "operator": "EMPTY" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": {}, "expected": { "active": false, "value": null } }, { "name": "multiple rules, all valid", "flag": { "conditions": [ { "rules": [ { "key": "foo", "negate": false, "operator": "EMPTY" }, { "key": "foo", "negate": false, "operator": "EMPTY" }, { "key": "foo", "negate": false, "operator": "EMPTY" }, { "key": "foo", "negate": false, "operator": "EMPTY" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": {}, "expected": { "active": true, "value": true } }, { "name": "multiple rules, one invalid", "flag": { "conditions": [ { "rules": [ { "key": "foo", "negate": false, "operator": "EMPTY" }, { "key": "foo", "negate": false, "operator": "EMPTY" }, { "key": "foo", "negate": true, "operator": "EMPTY" }, { "key": "foo", "negate": false, "operator": "EMPTY" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": {}, "expected": { "active": false, "value": null } }, { "name": "EMPTY - undefined", "flag": { "conditions": [ { "rules": [ { "operator": "EMPTY", "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": {}, "expected": { "active": true, "value": true } }, { "name": "EMPTY - null", "flag": { "conditions": [ { "rules": [ { "operator": "EMPTY", "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": null }, "expected": { "active": true, "value": true } }, { "name": "EMPTY - empty string", "flag": { "conditions": [ { "rules": [ { "operator": "EMPTY", "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "" }, "expected": { "active": true, "value": true } }, { "name": "EMPTY - string", "flag": { "conditions": [ { "rules": [ { "operator": "EMPTY", "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "bar" }, "expected": { "active": false, "value": null } }, { "name": "EMPTY - zero", "flag": { "conditions": [ { "rules": [ { "operator": "EMPTY", "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": 0 }, "expected": { "active": false, "value": null } }, { "name": "EMPTY - one", "flag": { "conditions": [ { "rules": [ { "operator": "EMPTY", "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": 1 }, "expected": { "active": false, "value": null } }, { "name": "EMPTY - true", "flag": { "conditions": [ { "rules": [ { "operator": "EMPTY", "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": true }, "expected": { "active": false, "value": null } }, { "name": "EMPTY - false", "flag": { "conditions": [ { "rules": [ { "operator": "EMPTY", "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": false }, "expected": { "active": false, "value": null } }, { "name": "EMPTY - object", "flag": { "conditions": [ { "rules": [ { "operator": "EMPTY", "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": {} }, "expected": { "active": false, "value": null } }, { "name": "EMPTY - array", "flag": { "conditions": [ { "rules": [ { "operator": "EMPTY", "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": [] }, "expected": { "active": false, "value": null } }, { "name": "EMPTY negate - undefined", "flag": { "conditions": [ { "rules": [ { "operator": "EMPTY", "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": {}, "expected": { "active": false, "value": null } }, { "name": "EMPTY negate - null", "flag": { "conditions": [ { "rules": [ { "operator": "EMPTY", "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": null }, "expected": { "active": false, "value": null } }, { "name": "EMPTY negate - empty string", "flag": { "conditions": [ { "rules": [ { "operator": "EMPTY", "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "" }, "expected": { "active": false, "value": null } }, { "name": "EMPTY negate - string", "flag": { "conditions": [ { "rules": [ { "operator": "EMPTY", "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "bar" }, "expected": { "active": true, "value": true } }, { "name": "EMPTY negate - zero", "flag": { "conditions": [ { "rules": [ { "operator": "EMPTY", "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": 0 }, "expected": { "active": true, "value": true } }, { "name": "EMPTY negate - one", "flag": { "conditions": [ { "rules": [ { "operator": "EMPTY", "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": 1 }, "expected": { "active": true, "value": true } }, { "name": "EMPTY negate - true", "flag": { "conditions": [ { "rules": [ { "operator": "EMPTY", "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": true }, "expected": { "active": true, "value": true } }, { "name": "EMPTY negate - false", "flag": { "conditions": [ { "rules": [ { "operator": "EMPTY", "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": false }, "expected": { "active": true, "value": true } }, { "name": "EMPTY negate - object", "flag": { "conditions": [ { "rules": [ { "operator": "EMPTY", "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": {} }, "expected": { "active": true, "value": true } }, { "name": "EMPTY negate - array", "flag": { "conditions": [ { "rules": [ { "operator": "EMPTY", "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": [] }, "expected": { "active": true, "value": true } }, { "name": "STR_EQUAL - empty string", "flag": { "conditions": [ { "rules": [ { "operator": "STR_EQUAL", "values": ["bar", "baz", "true", "1"], "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "" }, "expected": { "active": false, "value": null } }, { "name": "STR_EQUAL - exact match", "flag": { "conditions": [ { "rules": [ { "operator": "STR_EQUAL", "values": ["bar", "baz", "true", "1"], "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "bar" }, "expected": { "active": true, "value": true } }, { "name": "STR_EQUAL - uppercase", "flag": { "conditions": [ { "rules": [ { "operator": "STR_EQUAL", "values": ["bar", "baz", "true", "1"], "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "BAR" }, "expected": { "active": false, "value": null } }, { "name": "STR_EQUAL - accent", "flag": { "conditions": [ { "rules": [ { "operator": "STR_EQUAL", "values": ["bar", "baz", "true", "1"], "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "bàr" }, "expected": { "active": false, "value": null } }, { "name": "STR_EQUAL - another exact match", "flag": { "conditions": [ { "rules": [ { "operator": "STR_EQUAL", "values": ["bar", "baz", "true", "1"], "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "baz" }, "expected": { "active": true, "value": true } }, { "name": "STR_EQUAL - no match", "flag": { "conditions": [ { "rules": [ { "operator": "STR_EQUAL", "values": ["bar", "baz", "true", "1"], "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "bor" }, "expected": { "active": false, "value": null } }, { "name": "STR_EQUAL - undefined", "flag": { "conditions": [ { "rules": [ { "operator": "STR_EQUAL", "values": ["bar", "baz", "true", "1"], "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": {}, "expected": { "active": false, "value": null } }, { "name": "STR_EQUAL - null", "flag": { "conditions": [ { "rules": [ { "operator": "STR_EQUAL", "values": ["bar", "baz", "true", "1"], "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": null }, "expected": { "active": false, "value": null } }, { "name": "STR_EQUAL - zero", "flag": { "conditions": [ { "rules": [ { "operator": "STR_EQUAL", "values": ["bar", "baz", "true", "1"], "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": 0 }, "expected": { "active": false, "value": null } }, { "name": "STR_EQUAL - one", "flag": { "conditions": [ { "rules": [ { "operator": "STR_EQUAL", "values": ["bar", "baz", "true", "1"], "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": 1 }, "expected": { "active": false, "value": null } }, { "name": "STR_EQUAL - true", "flag": { "conditions": [ { "rules": [ { "operator": "STR_EQUAL", "values": ["bar", "baz", "true", "1"], "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": true }, "expected": { "active": false, "value": null } }, { "name": "STR_EQUAL - false", "flag": { "conditions": [ { "rules": [ { "operator": "STR_EQUAL", "values": ["bar", "baz", "true", "1"], "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": false }, "expected": { "active": false, "value": null } }, { "name": "STR_EQUAL - object", "flag": { "conditions": [ { "rules": [ { "operator": "STR_EQUAL", "values": ["bar", "baz", "true", "1"], "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": {} }, "expected": { "active": false, "value": null } }, { "name": "STR_EQUAL - array", "flag": { "conditions": [ { "rules": [ { "operator": "STR_EQUAL", "values": ["bar", "baz", "true", "1"], "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": [] }, "expected": { "active": false, "value": null } }, { "name": "STR_EQUAL negate - empty string", "flag": { "conditions": [ { "rules": [ { "operator": "STR_EQUAL", "values": ["bar", "baz", "true", "1"], "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "" }, "expected": { "active": true, "value": true } }, { "name": "STR_EQUAL negate - exact match", "flag": { "conditions": [ { "rules": [ { "operator": "STR_EQUAL", "values": ["bar", "baz", "true", "1"], "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "bar" }, "expected": { "active": false, "value": null } }, { "name": "STR_EQUAL negate - uppercase", "flag": { "conditions": [ { "rules": [ { "operator": "STR_EQUAL", "values": ["bar", "baz", "true", "1"], "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "BAR" }, "expected": { "active": true, "value": true } }, { "name": "STR_EQUAL negate - accent", "flag": { "conditions": [ { "rules": [ { "operator": "STR_EQUAL", "values": ["bar", "baz", "true", "1"], "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "bàr" }, "expected": { "active": true, "value": true } }, { "name": "STR_EQUAL negate - another exact match", "flag": { "conditions": [ { "rules": [ { "operator": "STR_EQUAL", "values": ["bar", "baz", "true", "1"], "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "baz" }, "expected": { "active": false, "value": null } }, { "name": "STR_EQUAL negate - no match", "flag": { "conditions": [ { "rules": [ { "operator": "STR_EQUAL", "values": ["bar", "baz", "true", "1"], "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "bor" }, "expected": { "active": true, "value": true } }, { "name": "STR_EQUAL negate - undefined", "flag": { "conditions": [ { "rules": [ { "operator": "STR_EQUAL", "values": ["bar", "baz", "true", "1"], "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": {}, "expected": { "active": false, "value": null } }, { "name": "STR_EQUAL negate - null", "flag": { "conditions": [ { "rules": [ { "operator": "STR_EQUAL", "values": ["bar", "baz", "true", "1"], "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": null }, "expected": { "active": false, "value": null } }, { "name": "STR_EQUAL negate - zero", "flag": { "conditions": [ { "rules": [ { "operator": "STR_EQUAL", "values": ["bar", "baz", "true", "1"], "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": 0 }, "expected": { "active": false, "value": null } }, { "name": "STR_EQUAL negate - one", "flag": { "conditions": [ { "rules": [ { "operator": "STR_EQUAL", "values": ["bar", "baz", "true", "1"], "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": 1 }, "expected": { "active": false, "value": null } }, { "name": "STR_EQUAL negate - true", "flag": { "conditions": [ { "rules": [ { "operator": "STR_EQUAL", "values": ["bar", "baz", "true", "1"], "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": true }, "expected": { "active": false, "value": null } }, { "name": "STR_EQUAL negate - false", "flag": { "conditions": [ { "rules": [ { "operator": "STR_EQUAL", "values": ["bar", "baz", "true", "1"], "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": false }, "expected": { "active": false, "value": null } }, { "name": "STR_EQUAL negate - object", "flag": { "conditions": [ { "rules": [ { "operator": "STR_EQUAL", "values": ["bar", "baz", "true", "1"], "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": {} }, "expected": { "active": false, "value": null } }, { "name": "STR_EQUAL negate - array", "flag": { "conditions": [ { "rules": [ { "operator": "STR_EQUAL", "values": ["bar", "baz", "true", "1"], "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": [] }, "expected": { "active": false, "value": null } }, { "name": "STR_EQUAL_SOFT - empty string", "flag": { "conditions": [ { "rules": [ { "operator": "STR_EQUAL_SOFT", "values": ["bar", "baz", "true", "1"], "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "" }, "expected": { "active": false, "value": null } }, { "name": "STR_EQUAL_SOFT - exact match", "flag": { "conditions": [ { "rules": [ { "operator": "STR_EQUAL_SOFT", "values": ["bar", "baz", "true", "1"], "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "bar" }, "expected": { "active": true, "value": true } }, { "name": "STR_EQUAL_SOFT - uppercase", "flag": { "conditions": [ { "rules": [ { "operator": "STR_EQUAL_SOFT", "values": ["bar", "baz", "true", "1"], "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "BAR" }, "expected": { "active": true, "value": true } }, { "name": "STR_EQUAL_SOFT - accent", "flag": { "conditions": [ { "rules": [ { "operator": "STR_EQUAL_SOFT", "values": ["bar", "baz", "true", "1"], "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "bàr" }, "expected": { "active": false, "value": null } }, { "name": "STR_EQUAL_SOFT - other exact match", "flag": { "conditions": [ { "rules": [ { "operator": "STR_EQUAL_SOFT", "values": ["bar", "baz", "true", "1"], "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "baz" }, "expected": { "active": true, "value": true } }, { "name": "STR_EQUAL_SOFT - one uppercase", "flag": { "conditions": [ { "rules": [ { "operator": "STR_EQUAL_SOFT", "values": ["bar", "baz", "true", "1"], "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "bAz" }, "expected": { "active": true, "value": true } }, { "name": "STR_EQUAL_SOFT - no match", "flag": { "conditions": [ { "rules": [ { "operator": "STR_EQUAL_SOFT", "values": ["bar", "baz", "true", "1"], "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "bor" }, "expected": { "active": false, "value": null } }, { "name": "STR_EQUAL_SOFT - exact match number", "flag": { "conditions": [ { "rules": [ { "operator": "STR_EQUAL_SOFT", "values": ["bar", "baz", "true", "1"], "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "1" }, "expected": { "active": true, "value": true } }, { "name": "STR_EQUAL_SOFT - soft match number", "flag": { "conditions": [ { "rules": [ { "operator": "STR_EQUAL_SOFT", "values": ["bar", "baz", "true", "1"], "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": 1 }, "expected": { "active": true, "value": true } }, { "name": "STR_EQUAL_SOFT - undefined", "flag": { "conditions": [ { "rules": [ { "operator": "STR_EQUAL_SOFT", "values": ["bar", "baz", "true", "1"], "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": {}, "expected": { "active": false, "value": null } }, { "name": "STR_EQUAL_SOFT - null", "flag": { "conditions": [ { "rules": [ { "operator": "STR_EQUAL_SOFT", "values": ["bar", "baz", "true", "1"], "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": null }, "expected": { "active": false, "value": null } }, { "name": "STR_EQUAL_SOFT - true", "flag": { "conditions": [ { "rules": [ { "operator": "STR_EQUAL_SOFT", "values": ["bar", "baz", "true", "1"], "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": true }, "expected": { "active": false, "value": null } }, { "name": "STR_EQUAL_SOFT - false", "flag": { "conditions": [ { "rules": [ { "operator": "STR_EQUAL_SOFT", "values": ["bar", "baz", "true", "1"], "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": false }, "expected": { "active": false, "value": null } }, { "name": "STR_EQUAL_SOFT - object", "flag": { "conditions": [ { "rules": [ { "operator": "STR_EQUAL_SOFT", "values": ["bar", "baz", "true", "1"], "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": {} }, "expected": { "active": false, "value": null } }, { "name": "STR_EQUAL_SOFT - array", "flag": { "conditions": [ { "rules": [ { "operator": "STR_EQUAL_SOFT", "values": ["bar", "baz", "true", "1"], "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": [] }, "expected": { "active": false, "value": null } }, { "name": "STR_CONTAINS - empty string", "flag": { "conditions": [ { "rules": [ { "operator": "STR_CONTAINS", "values": ["bar", "baz", "true", "1"], "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "" }, "expected": { "active": false, "value": null } }, { "name": "STR_CONTAINS - exact match", "flag": { "conditions": [ { "rules": [ { "operator": "STR_CONTAINS", "values": ["bar", "baz", "true", "1"], "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "bar" }, "expected": { "active": true, "value": true } }, { "name": "STR_CONTAINS - uppercase", "flag": { "conditions": [ { "rules": [ { "operator": "STR_CONTAINS", "values": ["bar", "baz", "true", "1"], "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "--bAr" }, "expected": { "active": false, "value": null } }, { "name": "STR_CONTAINS - accent", "flag": { "conditions": [ { "rules": [ { "operator": "STR_CONTAINS", "values": ["bar", "baz", "true", "1"], "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "bàr-" }, "expected": { "active": false, "value": null } }, { "name": "STR_CONTAINS - accent uppercase", "flag": { "conditions": [ { "rules": [ { "operator": "STR_CONTAINS", "values": ["bar", "baz", "true", "1"], "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "bÂr-" }, "expected": { "active": false, "value": null } }, { "name": "STR_CONTAINS - middle", "flag": { "conditions": [ { "rules": [ { "operator": "STR_CONTAINS", "values": ["bar", "baz", "true", "1"], "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "foobaz--" }, "expected": { "active": true, "value": true } }, { "name": "STR_CONTAINS - contains two", "flag": { "conditions": [ { "rules": [ { "operator": "STR_CONTAINS", "values": ["bar", "baz", "true", "1"], "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "foo barbaz" }, "expected": { "active": true, "value": true } }, { "name": "STR_CONTAINS - no match", "flag": { "conditions": [ { "rules": [ { "operator": "STR_CONTAINS", "values": ["bar", "baz", "true", "1"], "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "bor" }, "expected": { "active": false, "value": null } }, { "name": "STR_CONTAINS - undefined", "flag": { "conditions": [ { "rules": [ { "operator": "STR_CONTAINS", "values": ["bar", "baz", "true", "1"], "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": {}, "expected": { "active": false, "value": null } }, { "name": "STR_CONTAINS - null", "flag": { "conditions": [ { "rules": [ { "operator": "STR_CONTAINS", "values": ["bar", "baz", "true", "1"], "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": null }, "expected": { "active": false, "value": null } }, { "name": "STR_CONTAINS - zero", "flag": { "conditions": [ { "rules": [ { "operator": "STR_CONTAINS", "values": ["bar", "baz", "true", "1"], "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": 0 }, "expected": { "active": false, "value": null } }, { "name": "STR_CONTAINS - one", "flag": { "conditions": [ { "rules": [ { "operator": "STR_CONTAINS", "values": ["bar", "baz", "true", "1"], "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": 1 }, "expected": { "active": false, "value": null } }, { "name": "STR_CONTAINS - true", "flag": { "conditions": [ { "rules": [ { "operator": "STR_CONTAINS", "values": ["bar", "baz", "true", "1"], "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": true }, "expected": { "active": false, "value": null } }, { "name": "STR_CONTAINS - false", "flag": { "conditions": [ { "rules": [ { "operator": "STR_CONTAINS", "values": ["bar", "baz", "true", "1"], "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": false }, "expected": { "active": false, "value": null } }, { "name": "STR_CONTAINS - object", "flag": { "conditions": [ { "rules": [ { "operator": "STR_CONTAINS", "values": ["bar", "baz", "true", "1"], "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": {} }, "expected": { "active": false, "value": null } }, { "name": "STR_CONTAINS - array", "flag": { "conditions": [ { "rules": [ { "operator": "STR_CONTAINS", "values": ["bar", "baz", "true", "1"], "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": [] }, "expected": { "active": false, "value": null } }, { "name": "STR_CONTAINS negate - empty string", "flag": { "conditions": [ { "rules": [ { "operator": "STR_CONTAINS", "values": ["bar", "baz", "true", "1"], "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "" }, "expected": { "active": true, "value": true } }, { "name": "STR_CONTAINS negate - exact match", "flag": { "conditions": [ { "rules": [ { "operator": "STR_CONTAINS", "values": ["bar", "baz", "true", "1"], "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "bar" }, "expected": { "active": false, "value": null } }, { "name": "STR_CONTAINS negate - uppercase", "flag": { "conditions": [ { "rules": [ { "operator": "STR_CONTAINS", "values": ["bar", "baz", "true", "1"], "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "--bAr" }, "expected": { "active": true, "value": true } }, { "name": "STR_CONTAINS negate - accent", "flag": { "conditions": [ { "rules": [ { "operator": "STR_CONTAINS", "values": ["bar", "baz", "true", "1"], "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "bàr-" }, "expected": { "active": true, "value": true } }, { "name": "STR_CONTAINS negate - accent uppercase", "flag": { "conditions": [ { "rules": [ { "operator": "STR_CONTAINS", "values": ["bar", "baz", "true", "1"], "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "bÂr-" }, "expected": { "active": true, "value": true } }, { "name": "STR_CONTAINS negate - middle", "flag": { "conditions": [ { "rules": [ { "operator": "STR_CONTAINS", "values": ["bar", "baz", "true", "1"], "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "foobaz--" }, "expected": { "active": false, "value": null } }, { "name": "STR_CONTAINS negate - contains two", "flag": { "conditions": [ { "rules": [ { "operator": "STR_CONTAINS", "values": ["bar", "baz", "true", "1"], "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "foo barbaz" }, "expected": { "active": false, "value": null } }, { "name": "STR_CONTAINS negate - no match", "flag": { "conditions": [ { "rules": [ { "operator": "STR_CONTAINS", "values": ["bar", "baz", "true", "1"], "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "bor" }, "expected": { "active": true, "value": true } }, { "name": "STR_CONTAINS negate - undefined", "flag": { "conditions": [ { "rules": [ { "operator": "STR_CONTAINS", "values": ["bar", "baz", "true", "1"], "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": {}, "expected": { "active": false, "value": null } }, { "name": "STR_CONTAINS negate - null", "flag": { "conditions": [ { "rules": [ { "operator": "STR_CONTAINS", "values": ["bar", "baz", "true", "1"], "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": null }, "expected": { "active": false, "value": null } }, { "name": "STR_CONTAINS negate - zero", "flag": { "conditions": [ { "rules": [ { "operator": "STR_CONTAINS", "values": ["bar", "baz", "true", "1"], "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": 0 }, "expected": { "active": false, "value": null } }, { "name": "STR_CONTAINS negate - one", "flag": { "conditions": [ { "rules": [ { "operator": "STR_CONTAINS", "values": ["bar", "baz", "true", "1"], "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": 1 }, "expected": { "active": false, "value": null } }, { "name": "STR_CONTAINS negate - true", "flag": { "conditions": [ { "rules": [ { "operator": "STR_CONTAINS", "values": ["bar", "baz", "true", "1"], "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": true }, "expected": { "active": false, "value": null } }, { "name": "STR_CONTAINS negate - false", "flag": { "conditions": [ { "rules": [ { "operator": "STR_CONTAINS", "values": ["bar", "baz", "true", "1"], "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": false }, "expected": { "active": false, "value": null } }, { "name": "STR_CONTAINS negate - object", "flag": { "conditions": [ { "rules": [ { "operator": "STR_CONTAINS", "values": ["bar", "baz", "true", "1"], "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": {} }, "expected": { "active": false, "value": null } }, { "name": "STR_CONTAINS negate - array", "flag": { "conditions": [ { "rules": [ { "operator": "STR_CONTAINS", "values": ["bar", "baz", "true", "1"], "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": [] }, "expected": { "active": false, "value": null } }, { "name": "STR_STARTS_WITH - empty string", "flag": { "conditions": [ { "rules": [ { "operator": "STR_STARTS_WITH", "values": ["bar", "baz", "true", "1"], "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "" }, "expected": { "active": false, "value": null } }, { "name": "STR_STARTS_WITH - exact match", "flag": { "conditions": [ { "rules": [ { "operator": "STR_STARTS_WITH", "values": ["bar", "baz", "true", "1"], "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "bar" }, "expected": { "active": true, "value": true } }, { "name": "STR_STARTS_WITH - start", "flag": { "conditions": [ { "rules": [ { "operator": "STR_STARTS_WITH", "values": ["bar", "baz", "true", "1"], "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "bar--" }, "expected": { "active": true, "value": true } }, { "name": "STR_STARTS_WITH - end", "flag": { "conditions": [ { "rules": [ { "operator": "STR_STARTS_WITH", "values": ["bar", "baz", "true", "1"], "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "-bar" }, "expected": { "active": false, "value": null } }, { "name": "STR_STARTS_WITH - uppercase", "flag": { "conditions": [ { "rules": [ { "operator": "STR_STARTS_WITH", "values": ["bar", "baz", "true", "1"], "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "bAr" }, "expected": { "active": false, "value": null } }, { "name": "STR_STARTS_WITH - accent", "flag": { "conditions": [ { "rules": [ { "operator": "STR_STARTS_WITH", "values": ["bar", "baz", "true", "1"], "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "bàr" }, "expected": { "active": false, "value": null } }, { "name": "STR_STARTS_WITH - uppercase accent", "flag": { "conditions": [ { "rules": [ { "operator": "STR_STARTS_WITH", "values": ["bar", "baz", "true", "1"], "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "bÂr" }, "expected": { "active": false, "value": null } }, { "name": "STR_STARTS_WITH - other match start", "flag": { "conditions": [ { "rules": [ { "operator": "STR_STARTS_WITH", "values": ["bar", "baz", "true", "1"], "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "baz--" }, "expected": { "active": true, "value": true } }, { "name": "STR_STARTS_WITH - no match", "flag": { "conditions": [ { "rules": [ { "operator": "STR_STARTS_WITH", "values": ["bar", "baz", "true", "1"], "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "bor" }, "expected": { "active": false, "value": null } }, { "name": "STR_STARTS_WITH - undefined", "flag": { "conditions": [ { "rules": [ { "operator": "STR_STARTS_WITH", "values": ["bar", "baz", "true", "1"], "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": {}, "expected": { "active": false, "value": null } }, { "name": "STR_STARTS_WITH - null", "flag": { "conditions": [ { "rules": [ { "operator": "STR_STARTS_WITH", "values": ["bar", "baz", "true", "1"], "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": null }, "expected": { "active": false, "value": null } }, { "name": "STR_STARTS_WITH - zero", "flag": { "conditions": [ { "rules": [ { "operator": "STR_STARTS_WITH", "values": ["bar", "baz", "true", "1"], "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": 0 }, "expected": { "active": false, "value": null } }, { "name": "STR_STARTS_WITH - one", "flag": { "conditions": [ { "rules": [ { "operator": "STR_STARTS_WITH", "values": ["bar", "baz", "true", "1"], "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": 1 }, "expected": { "active": false, "value": null } }, { "name": "STR_STARTS_WITH - true", "flag": { "conditions": [ { "rules": [ { "operator": "STR_STARTS_WITH", "values": ["bar", "baz", "true", "1"], "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": true }, "expected": { "active": false, "value": null } }, { "name": "STR_STARTS_WITH - false", "flag": { "conditions": [ { "rules": [ { "operator": "STR_STARTS_WITH", "values": ["bar", "baz", "true", "1"], "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": false }, "expected": { "active": false, "value": null } }, { "name": "STR_STARTS_WITH - object", "flag": { "conditions": [ { "rules": [ { "operator": "STR_STARTS_WITH", "values": ["bar", "baz", "true", "1"], "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": {} }, "expected": { "active": false, "value": null } }, { "name": "STR_STARTS_WITH - array", "flag": { "conditions": [ { "rules": [ { "operator": "STR_STARTS_WITH", "values": ["bar", "baz", "true", "1"], "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": [] }, "expected": { "active": false, "value": null } }, { "name": "STR_STARTS_WITH negate - empty string", "flag": { "conditions": [ { "rules": [ { "operator": "STR_STARTS_WITH", "values": ["bar", "baz", "true", "1"], "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "" }, "expected": { "active": true, "value": true } }, { "name": "STR_STARTS_WITH negate - exact match", "flag": { "conditions": [ { "rules": [ { "operator": "STR_STARTS_WITH", "values": ["bar", "baz", "true", "1"], "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "bar" }, "expected": { "active": false, "value": null } }, { "name": "STR_STARTS_WITH negate - start", "flag": { "conditions": [ { "rules": [ { "operator": "STR_STARTS_WITH", "values": ["bar", "baz", "true", "1"], "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "bar--" }, "expected": { "active": false, "value": null } }, { "name": "STR_STARTS_WITH negate - end", "flag": { "conditions": [ { "rules": [ { "operator": "STR_STARTS_WITH", "values": ["bar", "baz", "true", "1"], "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "-bar" }, "expected": { "active": true, "value": true } }, { "name": "STR_STARTS_WITH negate - uppercase", "flag": { "conditions": [ { "rules": [ { "operator": "STR_STARTS_WITH", "values": ["bar", "baz", "true", "1"], "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "bAr" }, "expected": { "active": true, "value": true } }, { "name": "STR_STARTS_WITH negate - accent", "flag": { "conditions": [ { "rules": [ { "operator": "STR_STARTS_WITH", "values": ["bar", "baz", "true", "1"], "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "bàr" }, "expected": { "active": true, "value": true } }, { "name": "STR_STARTS_WITH negate - uppercase accent", "flag": { "conditions": [ { "rules": [ { "operator": "STR_STARTS_WITH", "values": ["bar", "baz", "true", "1"], "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "bÂr" }, "expected": { "active": true, "value": true } }, { "name": "STR_STARTS_WITH negate - other match start", "flag": { "conditions": [ { "rules": [ { "operator": "STR_STARTS_WITH", "values": ["bar", "baz", "true", "1"], "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "baz--" }, "expected": { "active": false, "value": null } }, { "name": "STR_STARTS_WITH negate - no match", "flag": { "conditions": [ { "rules": [ { "operator": "STR_STARTS_WITH", "values": ["bar", "baz", "true", "1"], "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "bor" }, "expected": { "active": true, "value": true } }, { "name": "STR_STARTS_WITH negate - undefined", "flag": { "conditions": [ { "rules": [ { "operator": "STR_STARTS_WITH", "values": ["bar", "baz", "true", "1"], "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": {}, "expected": { "active": false, "value": null } }, { "name": "STR_STARTS_WITH negate - null", "flag": { "conditions": [ { "rules": [ { "operator": "STR_STARTS_WITH", "values": ["bar", "baz", "true", "1"], "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": null }, "expected": { "active": false, "value": null } }, { "name": "STR_STARTS_WITH negate - zero", "flag": { "conditions": [ { "rules": [ { "operator": "STR_STARTS_WITH", "values": ["bar", "baz", "true", "1"], "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": 0 }, "expected": { "active": false, "value": null } }, { "name": "STR_STARTS_WITH negate - one", "flag": { "conditions": [ { "rules": [ { "operator": "STR_STARTS_WITH", "values": ["bar", "baz", "true", "1"], "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": 1 }, "expected": { "active": false, "value": null } }, { "name": "STR_STARTS_WITH negate - true", "flag": { "conditions": [ { "rules": [ { "operator": "STR_STARTS_WITH", "values": ["bar", "baz", "true", "1"], "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": true }, "expected": { "active": false, "value": null } }, { "name": "STR_STARTS_WITH negate - false", "flag": { "conditions": [ { "rules": [ { "operator": "STR_STARTS_WITH", "values": ["bar", "baz", "true", "1"], "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": false }, "expected": { "active": false, "value": null } }, { "name": "STR_STARTS_WITH negate - object", "flag": { "conditions": [ { "rules": [ { "operator": "STR_STARTS_WITH", "values": ["bar", "baz", "true", "1"], "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": {} }, "expected": { "active": false, "value": null } }, { "name": "STR_STARTS_WITH negate - array", "flag": { "conditions": [ { "rules": [ { "operator": "STR_STARTS_WITH", "values": ["bar", "baz", "true", "1"], "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": [] }, "expected": { "active": false, "value": null } }, { "name": "STR_ENDS_WITH - empty string", "flag": { "conditions": [ { "rules": [ { "operator": "STR_ENDS_WITH", "values": ["bar", "baz", "true", "1"], "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "" }, "expected": { "active": false, "value": null } }, { "name": "STR_ENDS_WITH - exact match", "flag": { "conditions": [ { "rules": [ { "operator": "STR_ENDS_WITH", "values": ["bar", "baz", "true", "1"], "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "bar" }, "expected": { "active": true, "value": true } }, { "name": "STR_ENDS_WITH - end", "flag": { "conditions": [ { "rules": [ { "operator": "STR_ENDS_WITH", "values": ["bar", "baz", "true", "1"], "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "--bar" }, "expected": { "active": true, "value": true } }, { "name": "STR_ENDS_WITH - start", "flag": { "conditions": [ { "rules": [ { "operator": "STR_ENDS_WITH", "values": ["bar", "baz", "true", "1"], "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "bar-" }, "expected": { "active": false, "value": null } }, { "name": "STR_ENDS_WITH - uppercase", "flag": { "conditions": [ { "rules": [ { "operator": "STR_ENDS_WITH", "values": ["bar", "baz", "true", "1"], "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "bAr" }, "expected": { "active": false, "value": null } }, { "name": "STR_ENDS_WITH - accent", "flag": { "conditions": [ { "rules": [ { "operator": "STR_ENDS_WITH", "values": ["bar", "baz", "true", "1"], "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "bàr" }, "expected": { "active": false, "value": null } }, { "name": "STR_ENDS_WITH - uppercase accent", "flag": { "conditions": [ { "rules": [ { "operator": "STR_ENDS_WITH", "values": ["bar", "baz", "true", "1"], "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "bÂr" }, "expected": { "active": false, "value": null } }, { "name": "STR_ENDS_WITH - other match end", "flag": { "conditions": [ { "rules": [ { "operator": "STR_ENDS_WITH", "values": ["bar", "baz", "true", "1"], "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "--baz" }, "expected": { "active": true, "value": true } }, { "name": "STR_ENDS_WITH - no match", "flag": { "conditions": [ { "rules": [ { "operator": "STR_ENDS_WITH", "values": ["bar", "baz", "true", "1"], "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "bor" }, "expected": { "active": false, "value": null } }, { "name": "STR_ENDS_WITH - undefined", "flag": { "conditions": [ { "rules": [ { "operator": "STR_ENDS_WITH", "values": ["bar", "baz", "true", "1"], "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": {}, "expected": { "active": false, "value": null } }, { "name": "STR_ENDS_WITH - null", "flag": { "conditions": [ { "rules": [ { "operator": "STR_ENDS_WITH", "values": ["bar", "baz", "true", "1"], "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": null }, "expected": { "active": false, "value": null } }, { "name": "STR_ENDS_WITH - zero", "flag": { "conditions": [ { "rules": [ { "operator": "STR_ENDS_WITH", "values": ["bar", "baz", "true", "1"], "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": 0 }, "expected": { "active": false, "value": null } }, { "name": "STR_ENDS_WITH - one", "flag": { "conditions": [ { "rules": [ { "operator": "STR_ENDS_WITH", "values": ["bar", "baz", "true", "1"], "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": 1 }, "expected": { "active": false, "value": null } }, { "name": "STR_ENDS_WITH - true", "flag": { "conditions": [ { "rules": [ { "operator": "STR_ENDS_WITH", "values": ["bar", "baz", "true", "1"], "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": true }, "expected": { "active": false, "value": null } }, { "name": "STR_ENDS_WITH - false", "flag": { "conditions": [ { "rules": [ { "operator": "STR_ENDS_WITH", "values": ["bar", "baz", "true", "1"], "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": false }, "expected": { "active": false, "value": null } }, { "name": "STR_ENDS_WITH - object", "flag": { "conditions": [ { "rules": [ { "operator": "STR_ENDS_WITH", "values": ["bar", "baz", "true", "1"], "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": {} }, "expected": { "active": false, "value": null } }, { "name": "STR_ENDS_WITH - array", "flag": { "conditions": [ { "rules": [ { "operator": "STR_ENDS_WITH", "values": ["bar", "baz", "true", "1"], "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": [] }, "expected": { "active": false, "value": null } }, { "name": "STR_ENDS_WITH negate - empty string", "flag": { "conditions": [ { "rules": [ { "operator": "STR_ENDS_WITH", "values": ["bar", "baz", "true", "1"], "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "" }, "expected": { "active": true, "value": true } }, { "name": "STR_ENDS_WITH negate - exact match", "flag": { "conditions": [ { "rules": [ { "operator": "STR_ENDS_WITH", "values": ["bar", "baz", "true", "1"], "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "bar" }, "expected": { "active": false, "value": null } }, { "name": "STR_ENDS_WITH negate - end", "flag": { "conditions": [ { "rules": [ { "operator": "STR_ENDS_WITH", "values": ["bar", "baz", "true", "1"], "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "--bar" }, "expected": { "active": false, "value": null } }, { "name": "STR_ENDS_WITH negate - start", "flag": { "conditions": [ { "rules": [ { "operator": "STR_ENDS_WITH", "values": ["bar", "baz", "true", "1"], "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "bar-" }, "expected": { "active": true, "value": true } }, { "name": "STR_ENDS_WITH negate - uppercase", "flag": { "conditions": [ { "rules": [ { "operator": "STR_ENDS_WITH", "values": ["bar", "baz", "true", "1"], "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "bAr" }, "expected": { "active": true, "value": true } }, { "name": "STR_ENDS_WITH negate - accent", "flag": { "conditions": [ { "rules": [ { "operator": "STR_ENDS_WITH", "values": ["bar", "baz", "true", "1"], "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "bàr" }, "expected": { "active": true, "value": true } }, { "name": "STR_ENDS_WITH negate - uppercase accent", "flag": { "conditions": [ { "rules": [ { "operator": "STR_ENDS_WITH", "values": ["bar", "baz", "true", "1"], "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "bÂr" }, "expected": { "active": true, "value": true } }, { "name": "STR_ENDS_WITH negate - other match end", "flag": { "conditions": [ { "rules": [ { "operator": "STR_ENDS_WITH", "values": ["bar", "baz", "true", "1"], "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "--baz" }, "expected": { "active": false, "value": null } }, { "name": "STR_ENDS_WITH negate - no match", "flag": { "conditions": [ { "rules": [ { "operator": "STR_ENDS_WITH", "values": ["bar", "baz", "true", "1"], "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "bor" }, "expected": { "active": true, "value": true } }, { "name": "STR_ENDS_WITH negate - undefined", "flag": { "conditions": [ { "rules": [ { "operator": "STR_ENDS_WITH", "values": ["bar", "baz", "true", "1"], "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": {}, "expected": { "active": false, "value": null } }, { "name": "STR_ENDS_WITH negate - null", "flag": { "conditions": [ { "rules": [ { "operator": "STR_ENDS_WITH", "values": ["bar", "baz", "true", "1"], "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": null }, "expected": { "active": false, "value": null } }, { "name": "STR_ENDS_WITH negate - zero", "flag": { "conditions": [ { "rules": [ { "operator": "STR_ENDS_WITH", "values": ["bar", "baz", "true", "1"], "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": 0 }, "expected": { "active": false, "value": null } }, { "name": "STR_ENDS_WITH negate - one", "flag": { "conditions": [ { "rules": [ { "operator": "STR_ENDS_WITH", "values": ["bar", "baz", "true", "1"], "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": 1 }, "expected": { "active": false, "value": null } }, { "name": "STR_ENDS_WITH negate - true", "flag": { "conditions": [ { "rules": [ { "operator": "STR_ENDS_WITH", "values": ["bar", "baz", "true", "1"], "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": true }, "expected": { "active": false, "value": null } }, { "name": "STR_ENDS_WITH negate - false", "flag": { "conditions": [ { "rules": [ { "operator": "STR_ENDS_WITH", "values": ["bar", "baz", "true", "1"], "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": false }, "expected": { "active": false, "value": null } }, { "name": "STR_ENDS_WITH negate - object", "flag": { "conditions": [ { "rules": [ { "operator": "STR_ENDS_WITH", "values": ["bar", "baz", "true", "1"], "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": {} }, "expected": { "active": false, "value": null } }, { "name": "STR_ENDS_WITH negate - array", "flag": { "conditions": [ { "rules": [ { "operator": "STR_ENDS_WITH", "values": ["bar", "baz", "true", "1"], "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": [] }, "expected": { "active": false, "value": null } }, { "name": "REGEXP - empty string", "flag": { "conditions": [ { "rules": [ { "operator": "REGEXP", "value": "\\d", "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "" }, "expected": { "active": false, "value": null } }, { "name": "REGEXP - match", "flag": { "conditions": [ { "rules": [ { "operator": "REGEXP", "value": "\\d", "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": ">3<" }, "expected": { "active": true, "value": true } }, { "name": "REGEXP - no match", "flag": { "conditions": [ { "rules": [ { "operator": "REGEXP", "value": "\\d", "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "bar" }, "expected": { "active": false, "value": null } }, { "name": "REGEXP - undefined", "flag": { "conditions": [ { "rules": [ { "operator": "REGEXP", "value": "\\d", "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": {}, "expected": { "active": false, "value": null } }, { "name": "REGEXP - null", "flag": { "conditions": [ { "rules": [ { "operator": "REGEXP", "value": "\\d", "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": null }, "expected": { "active": false, "value": null } }, { "name": "REGEXP - zero", "flag": { "conditions": [ { "rules": [ { "operator": "REGEXP", "value": "\\d", "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": 0 }, "expected": { "active": false, "value": null } }, { "name": "REGEXP - one", "flag": { "conditions": [ { "rules": [ { "operator": "REGEXP", "value": "\\d", "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": 1 }, "expected": { "active": false, "value": null } }, { "name": "REGEXP - true", "flag": { "conditions": [ { "rules": [ { "operator": "REGEXP", "value": "\\d", "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": true }, "expected": { "active": false, "value": null } }, { "name": "REGEXP - false", "flag": { "conditions": [ { "rules": [ { "operator": "REGEXP", "value": "\\d", "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": false }, "expected": { "active": false, "value": null } }, { "name": "REGEXP - object", "flag": { "conditions": [ { "rules": [ { "operator": "REGEXP", "value": "\\d", "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": {} }, "expected": { "active": false, "value": null } }, { "name": "REGEXP - array", "flag": { "conditions": [ { "rules": [ { "operator": "REGEXP", "value": "\\d", "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": [] }, "expected": { "active": false, "value": null } }, { "name": "REGEXP negate - empty string", "flag": { "conditions": [ { "rules": [ { "operator": "REGEXP", "value": "\\d", "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "" }, "expected": { "active": true, "value": true } }, { "name": "REGEXP negate - match", "flag": { "conditions": [ { "rules": [ { "operator": "REGEXP", "value": "\\d", "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": ">3<" }, "expected": { "active": false, "value": null } }, { "name": "REGEXP negate - no match", "flag": { "conditions": [ { "rules": [ { "operator": "REGEXP", "value": "\\d", "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "bar" }, "expected": { "active": true, "value": true } }, { "name": "REGEXP negate - undefined", "flag": { "conditions": [ { "rules": [ { "operator": "REGEXP", "value": "\\d", "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": {}, "expected": { "active": false, "value": null } }, { "name": "REGEXP negate - null", "flag": { "conditions": [ { "rules": [ { "operator": "REGEXP", "value": "\\d", "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": null }, "expected": { "active": false, "value": null } }, { "name": "REGEXP negate - zero", "flag": { "conditions": [ { "rules": [ { "operator": "REGEXP", "value": "\\d", "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": 0 }, "expected": { "active": false, "value": null } }, { "name": "REGEXP negate - one", "flag": { "conditions": [ { "rules": [ { "operator": "REGEXP", "value": "\\d", "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": 1 }, "expected": { "active": false, "value": null } }, { "name": "REGEXP negate - true", "flag": { "conditions": [ { "rules": [ { "operator": "REGEXP", "value": "\\d", "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": true }, "expected": { "active": false, "value": null } }, { "name": "REGEXP negate - false", "flag": { "conditions": [ { "rules": [ { "operator": "REGEXP", "value": "\\d", "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": false }, "expected": { "active": false, "value": null } }, { "name": "REGEXP negate - object", "flag": { "conditions": [ { "rules": [ { "operator": "REGEXP", "value": "\\d", "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": {} }, "expected": { "active": false, "value": null } }, { "name": "REGEXP negate - array", "flag": { "conditions": [ { "rules": [ { "operator": "REGEXP", "value": "\\d", "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": [] }, "expected": { "active": false, "value": null } }, { "name": "STR_BEFORE - before", "flag": { "conditions": [ { "rules": [ { "operator": "STR_BEFORE", "value": "bar", "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "aaa" }, "expected": { "active": true, "value": true } }, { "name": "STR_BEFORE - sub string of start", "flag": { "conditions": [ { "rules": [ { "operator": "STR_BEFORE", "value": "bar", "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "ba" }, "expected": { "active": true, "value": true } }, { "name": "STR_BEFORE - accent", "flag": { "conditions": [ { "rules": [ { "operator": "STR_BEFORE", "value": "bar", "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "bà" }, "expected": { "active": false, "value": null } }, { "name": "STR_BEFORE - same", "flag": { "conditions": [ { "rules": [ { "operator": "STR_BEFORE", "value": "bar", "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "bar" }, "expected": { "active": true, "value": true } }, { "name": "STR_BEFORE - same with suffix", "flag": { "conditions": [ { "rules": [ { "operator": "STR_BEFORE", "value": "bar", "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "bara" }, "expected": { "active": false, "value": null } }, { "name": "STR_BEFORE - after", "flag": { "conditions": [ { "rules": [ { "operator": "STR_BEFORE", "value": "bar", "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "zzz" }, "expected": { "active": false, "value": null } }, { "name": "STR_BEFORE - undefined", "flag": { "conditions": [ { "rules": [ { "operator": "STR_BEFORE", "value": "bar", "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": {}, "expected": { "active": false, "value": null } }, { "name": "STR_BEFORE - null", "flag": { "conditions": [ { "rules": [ { "operator": "STR_BEFORE", "value": "bar", "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": null }, "expected": { "active": false, "value": null } }, { "name": "STR_BEFORE - zero", "flag": { "conditions": [ { "rules": [ { "operator": "STR_BEFORE", "value": "bar", "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": 0 }, "expected": { "active": false, "value": null } }, { "name": "STR_BEFORE - one", "flag": { "conditions": [ { "rules": [ { "operator": "STR_BEFORE", "value": "bar", "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": 1 }, "expected": { "active": false, "value": null } }, { "name": "STR_BEFORE - true", "flag": { "conditions": [ { "rules": [ { "operator": "STR_BEFORE", "value": "bar", "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": true }, "expected": { "active": false, "value": null } }, { "name": "STR_BEFORE - false", "flag": { "conditions": [ { "rules": [ { "operator": "STR_BEFORE", "value": "bar", "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": false }, "expected": { "active": false, "value": null } }, { "name": "STR_BEFORE - object", "flag": { "conditions": [ { "rules": [ { "operator": "STR_BEFORE", "value": "bar", "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": {} }, "expected": { "active": false, "value": null } }, { "name": "STR_BEFORE - array", "flag": { "conditions": [ { "rules": [ { "operator": "STR_BEFORE", "value": "bar", "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": [] }, "expected": { "active": false, "value": null } }, { "name": "STR_BEFORE negate - before", "flag": { "conditions": [ { "rules": [ { "operator": "STR_BEFORE", "value": "bar", "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "aaa" }, "expected": { "active": false, "value": null } }, { "name": "STR_BEFORE negate - sub string of start", "flag": { "conditions": [ { "rules": [ { "operator": "STR_BEFORE", "value": "bar", "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "ba" }, "expected": { "active": false, "value": null } }, { "name": "STR_BEFORE negate - accent", "flag": { "conditions": [ { "rules": [ { "operator": "STR_BEFORE", "value": "bar", "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "bà" }, "expected": { "active": true, "value": true } }, { "name": "STR_BEFORE negate - same", "flag": { "conditions": [ { "rules": [ { "operator": "STR_BEFORE", "value": "bar", "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "bar" }, "expected": { "active": false, "value": null } }, { "name": "STR_BEFORE negate - same with suffix", "flag": { "conditions": [ { "rules": [ { "operator": "STR_BEFORE", "value": "bar", "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "bara" }, "expected": { "active": true, "value": true } }, { "name": "STR_BEFORE negate - after", "flag": { "conditions": [ { "rules": [ { "operator": "STR_BEFORE", "value": "bar", "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "zzz" }, "expected": { "active": true, "value": true } }, { "name": "STR_BEFORE negate - undefined", "flag": { "conditions": [ { "rules": [ { "operator": "STR_BEFORE", "value": "bar", "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": {}, "expected": { "active": false, "value": null } }, { "name": "STR_BEFORE negate - null", "flag": { "conditions": [ { "rules": [ { "operator": "STR_BEFORE", "value": "bar", "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": null }, "expected": { "active": false, "value": null } }, { "name": "STR_BEFORE negate - zero", "flag": { "conditions": [ { "rules": [ { "operator": "STR_BEFORE", "value": "bar", "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": 0 }, "expected": { "active": false, "value": null } }, { "name": "STR_BEFORE negate - one", "flag": { "conditions": [ { "rules": [ { "operator": "STR_BEFORE", "value": "bar", "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": 1 }, "expected": { "active": false, "value": null } }, { "name": "STR_BEFORE negate - true", "flag": { "conditions": [ { "rules": [ { "operator": "STR_BEFORE", "value": "bar", "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": true }, "expected": { "active": false, "value": null } }, { "name": "STR_BEFORE negate - false", "flag": { "conditions": [ { "rules": [ { "operator": "STR_BEFORE", "value": "bar", "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": false }, "expected": { "active": false, "value": null } }, { "name": "STR_BEFORE negate - object", "flag": { "conditions": [ { "rules": [ { "operator": "STR_BEFORE", "value": "bar", "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": {} }, "expected": { "active": false, "value": null } }, { "name": "STR_BEFORE negate - array", "flag": { "conditions": [ { "rules": [ { "operator": "STR_BEFORE", "value": "bar", "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": [] }, "expected": { "active": false, "value": null } }, { "name": "STR_AFTER - before", "flag": { "conditions": [ { "rules": [ { "operator": "STR_AFTER", "value": "bar", "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "aaa" }, "expected": { "active": false, "value": null } }, { "name": "STR_AFTER - sub string of start", "flag": { "conditions": [ { "rules": [ { "operator": "STR_AFTER", "value": "bar", "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "ba" }, "expected": { "active": false, "value": null } }, { "name": "STR_AFTER - same", "flag": { "conditions": [ { "rules": [ { "operator": "STR_AFTER", "value": "bar", "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "bar" }, "expected": { "active": true, "value": true } }, { "name": "STR_AFTER - uppercase", "flag": { "conditions": [ { "rules": [ { "operator": "STR_AFTER", "value": "bar", "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "BAR" }, "expected": { "active": false, "value": null } }, { "name": "STR_AFTER - same with suffix", "flag": { "conditions": [ { "rules": [ { "operator": "STR_AFTER", "value": "bar", "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "bara" }, "expected": { "active": true, "value": true } }, { "name": "STR_AFTER - after", "flag": { "conditions": [ { "rules": [ { "operator": "STR_AFTER", "value": "bar", "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "zzz" }, "expected": { "active": true, "value": true } }, { "name": "STR_AFTER - undefined", "flag": { "conditions": [ { "rules": [ { "operator": "STR_AFTER", "value": "bar", "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": {}, "expected": { "active": false, "value": null } }, { "name": "STR_AFTER - null", "flag": { "conditions": [ { "rules": [ { "operator": "STR_AFTER", "value": "bar", "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": null }, "expected": { "active": false, "value": null } }, { "name": "STR_AFTER - zero", "flag": { "conditions": [ { "rules": [ { "operator": "STR_AFTER", "value": "bar", "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": 0 }, "expected": { "active": false, "value": null } }, { "name": "STR_AFTER - one", "flag": { "conditions": [ { "rules": [ { "operator": "STR_AFTER", "value": "bar", "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": 1 }, "expected": { "active": false, "value": null } }, { "name": "STR_AFTER - true", "flag": { "conditions": [ { "rules": [ { "operator": "STR_AFTER", "value": "bar", "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": true }, "expected": { "active": false, "value": null } }, { "name": "STR_AFTER - false", "flag": { "conditions": [ { "rules": [ { "operator": "STR_AFTER", "value": "bar", "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": false }, "expected": { "active": false, "value": null } }, { "name": "STR_AFTER - object", "flag": { "conditions": [ { "rules": [ { "operator": "STR_AFTER", "value": "bar", "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": {} }, "expected": { "active": false, "value": null } }, { "name": "STR_AFTER - array", "flag": { "conditions": [ { "rules": [ { "operator": "STR_AFTER", "value": "bar", "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": [] }, "expected": { "active": false, "value": null } }, { "name": "STR_AFTER negate - before", "flag": { "conditions": [ { "rules": [ { "operator": "STR_AFTER", "value": "bar", "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "aaa" }, "expected": { "active": true, "value": true } }, { "name": "STR_AFTER negate - sub string of start", "flag": { "conditions": [ { "rules": [ { "operator": "STR_AFTER", "value": "bar", "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "ba" }, "expected": { "active": true, "value": true } }, { "name": "STR_AFTER negate - same", "flag": { "conditions": [ { "rules": [ { "operator": "STR_AFTER", "value": "bar", "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "bar" }, "expected": { "active": false, "value": null } }, { "name": "STR_AFTER negate - uppercase", "flag": { "conditions": [ { "rules": [ { "operator": "STR_AFTER", "value": "bar", "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "BAR" }, "expected": { "active": true, "value": true } }, { "name": "STR_AFTER negate - same with suffix", "flag": { "conditions": [ { "rules": [ { "operator": "STR_AFTER", "value": "bar", "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "bara" }, "expected": { "active": false, "value": null } }, { "name": "STR_AFTER negate - after", "flag": { "conditions": [ { "rules": [ { "operator": "STR_AFTER", "value": "bar", "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "zzz" }, "expected": { "active": false, "value": null } }, { "name": "STR_AFTER negate - undefined", "flag": { "conditions": [ { "rules": [ { "operator": "STR_AFTER", "value": "bar", "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": {}, "expected": { "active": false, "value": null } }, { "name": "STR_AFTER negate - null", "flag": { "conditions": [ { "rules": [ { "operator": "STR_AFTER", "value": "bar", "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": null }, "expected": { "active": false, "value": null } }, { "name": "STR_AFTER negate - zero", "flag": { "conditions": [ { "rules": [ { "operator": "STR_AFTER", "value": "bar", "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": 0 }, "expected": { "active": false, "value": null } }, { "name": "STR_AFTER negate - one", "flag": { "conditions": [ { "rules": [ { "operator": "STR_AFTER", "value": "bar", "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": 1 }, "expected": { "active": false, "value": null } }, { "name": "STR_AFTER negate - true", "flag": { "conditions": [ { "rules": [ { "operator": "STR_AFTER", "value": "bar", "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": true }, "expected": { "active": false, "value": null } }, { "name": "STR_AFTER negate - false", "flag": { "conditions": [ { "rules": [ { "operator": "STR_AFTER", "value": "bar", "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": false }, "expected": { "active": false, "value": null } }, { "name": "STR_AFTER negate - object", "flag": { "conditions": [ { "rules": [ { "operator": "STR_AFTER", "value": "bar", "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": {} }, "expected": { "active": false, "value": null } }, { "name": "STR_AFTER negate - array", "flag": { "conditions": [ { "rules": [ { "operator": "STR_AFTER", "value": "bar", "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": [] }, "expected": { "active": false, "value": null } }, { "name": "EQ - smaller", "flag": { "conditions": [ { "rules": [ { "operator": "EQ", "value": 5, "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": 0 }, "expected": { "active": false, "value": null } }, { "name": "EQ - equal", "flag": { "conditions": [ { "rules": [ { "operator": "EQ", "value": 5, "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": 5 }, "expected": { "active": true, "value": true } }, { "name": "EQ - larger", "flag": { "conditions": [ { "rules": [ { "operator": "EQ", "value": 5, "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": 10 }, "expected": { "active": false, "value": null } }, { "name": "EQ - undefined", "flag": { "conditions": [ { "rules": [ { "operator": "EQ", "value": 5, "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": {}, "expected": { "active": false, "value": null } }, { "name": "EQ - null", "flag": { "conditions": [ { "rules": [ { "operator": "EQ", "value": 5, "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": null }, "expected": { "active": false, "value": null } }, { "name": "EQ - empty string", "flag": { "conditions": [ { "rules": [ { "operator": "EQ", "value": 5, "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "" }, "expected": { "active": false, "value": null } }, { "name": "EQ - string", "flag": { "conditions": [ { "rules": [ { "operator": "EQ", "value": 5, "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "bar" }, "expected": { "active": false, "value": null } }, { "name": "EQ - zero as string", "flag": { "conditions": [ { "rules": [ { "operator": "EQ", "value": 5, "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "0" }, "expected": { "active": false, "value": null } }, { "name": "EQ - one as string", "flag": { "conditions": [ { "rules": [ { "operator": "EQ", "value": 5, "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "1" }, "expected": { "active": false, "value": null } }, { "name": "EQ - true as string", "flag": { "conditions": [ { "rules": [ { "operator": "EQ", "value": 5, "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "true" }, "expected": { "active": false, "value": null } }, { "name": "EQ - false as string", "flag": { "conditions": [ { "rules": [ { "operator": "EQ", "value": 5, "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "false" }, "expected": { "active": false, "value": null } }, { "name": "EQ - true", "flag": { "conditions": [ { "rules": [ { "operator": "EQ", "value": 5, "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": true }, "expected": { "active": false, "value": null } }, { "name": "EQ - false", "flag": { "conditions": [ { "rules": [ { "operator": "EQ", "value": 5, "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": false }, "expected": { "active": false, "value": null } }, { "name": "EQ - object", "flag": { "conditions": [ { "rules": [ { "operator": "EQ", "value": 5, "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": {} }, "expected": { "active": false, "value": null } }, { "name": "EQ - array", "flag": { "conditions": [ { "rules": [ { "operator": "EQ", "value": 5, "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": [] }, "expected": { "active": false, "value": null } }, { "name": "EQ negate - smaller", "flag": { "conditions": [ { "rules": [ { "operator": "EQ", "value": 5, "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": 0 }, "expected": { "active": true, "value": true } }, { "name": "EQ negate - equal", "flag": { "conditions": [ { "rules": [ { "operator": "EQ", "value": 5, "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": 5 }, "expected": { "active": false, "value": null } }, { "name": "EQ negate - larger", "flag": { "conditions": [ { "rules": [ { "operator": "EQ", "value": 5, "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": 10 }, "expected": { "active": true, "value": true } }, { "name": "EQ negate - undefined", "flag": { "conditions": [ { "rules": [ { "operator": "EQ", "value": 5, "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": {}, "expected": { "active": false, "value": null } }, { "name": "EQ negate - null", "flag": { "conditions": [ { "rules": [ { "operator": "EQ", "value": 5, "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": null }, "expected": { "active": false, "value": null } }, { "name": "EQ negate - empty string", "flag": { "conditions": [ { "rules": [ { "operator": "EQ", "value": 5, "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "" }, "expected": { "active": false, "value": null } }, { "name": "EQ negate - string", "flag": { "conditions": [ { "rules": [ { "operator": "EQ", "value": 5, "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "bar" }, "expected": { "active": false, "value": null } }, { "name": "EQ negate - zero as string", "flag": { "conditions": [ { "rules": [ { "operator": "EQ", "value": 5, "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "0" }, "expected": { "active": false, "value": null } }, { "name": "EQ negate - one as string", "flag": { "conditions": [ { "rules": [ { "operator": "EQ", "value": 5, "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "1" }, "expected": { "active": false, "value": null } }, { "name": "EQ negate - true as string", "flag": { "conditions": [ { "rules": [ { "operator": "EQ", "value": 5, "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "true" }, "expected": { "active": false, "value": null } }, { "name": "EQ negate - false as string", "flag": { "conditions": [ { "rules": [ { "operator": "EQ", "value": 5, "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "false" }, "expected": { "active": false, "value": null } }, { "name": "EQ negate - true", "flag": { "conditions": [ { "rules": [ { "operator": "EQ", "value": 5, "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": true }, "expected": { "active": false, "value": null } }, { "name": "EQ negate - false", "flag": { "conditions": [ { "rules": [ { "operator": "EQ", "value": 5, "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": false }, "expected": { "active": false, "value": null } }, { "name": "EQ negate - object", "flag": { "conditions": [ { "rules": [ { "operator": "EQ", "value": 5, "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": {} }, "expected": { "active": false, "value": null } }, { "name": "EQ negate - array", "flag": { "conditions": [ { "rules": [ { "operator": "EQ", "value": 5, "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": [] }, "expected": { "active": false, "value": null } }, { "name": "GT - smaller", "flag": { "conditions": [ { "rules": [ { "operator": "GT", "value": 5, "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": 0 }, "expected": { "active": false, "value": null } }, { "name": "GT - equal", "flag": { "conditions": [ { "rules": [ { "operator": "GT", "value": 5, "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": 5 }, "expected": { "active": false, "value": null } }, { "name": "GT - larger", "flag": { "conditions": [ { "rules": [ { "operator": "GT", "value": 5, "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": 10 }, "expected": { "active": true, "value": true } }, { "name": "GT - undefined", "flag": { "conditions": [ { "rules": [ { "operator": "GT", "value": 5, "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": {}, "expected": { "active": false, "value": null } }, { "name": "GT - null", "flag": { "conditions": [ { "rules": [ { "operator": "GT", "value": 5, "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": null }, "expected": { "active": false, "value": null } }, { "name": "GT - empty string", "flag": { "conditions": [ { "rules": [ { "operator": "GT", "value": 5, "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "" }, "expected": { "active": false, "value": null } }, { "name": "GT - string", "flag": { "conditions": [ { "rules": [ { "operator": "GT", "value": 5, "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "bar" }, "expected": { "active": false, "value": null } }, { "name": "GT - zero as string", "flag": { "conditions": [ { "rules": [ { "operator": "GT", "value": 5, "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "0" }, "expected": { "active": false, "value": null } }, { "name": "GT - one as string", "flag": { "conditions": [ { "rules": [ { "operator": "GT", "value": 5, "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "1" }, "expected": { "active": false, "value": null } }, { "name": "GT - true as string", "flag": { "conditions": [ { "rules": [ { "operator": "GT", "value": 5, "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "true" }, "expected": { "active": false, "value": null } }, { "name": "GT - false as string", "flag": { "conditions": [ { "rules": [ { "operator": "GT", "value": 5, "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "false" }, "expected": { "active": false, "value": null } }, { "name": "GT - true", "flag": { "conditions": [ { "rules": [ { "operator": "GT", "value": 5, "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": true }, "expected": { "active": false, "value": null } }, { "name": "GT - false", "flag": { "conditions": [ { "rules": [ { "operator": "GT", "value": 5, "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": false }, "expected": { "active": false, "value": null } }, { "name": "GT - object", "flag": { "conditions": [ { "rules": [ { "operator": "GT", "value": 5, "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": {} }, "expected": { "active": false, "value": null } }, { "name": "GT - array", "flag": { "conditions": [ { "rules": [ { "operator": "GT", "value": 5, "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": [] }, "expected": { "active": false, "value": null } }, { "name": "GT negate - smaller", "flag": { "conditions": [ { "rules": [ { "operator": "GT", "value": 5, "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": 0 }, "expected": { "active": true, "value": true } }, { "name": "GT negate - equal", "flag": { "conditions": [ { "rules": [ { "operator": "GT", "value": 5, "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": 5 }, "expected": { "active": true, "value": true } }, { "name": "GT negate - larger", "flag": { "conditions": [ { "rules": [ { "operator": "GT", "value": 5, "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": 10 }, "expected": { "active": false, "value": null } }, { "name": "GT negate - undefined", "flag": { "conditions": [ { "rules": [ { "operator": "GT", "value": 5, "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": {}, "expected": { "active": false, "value": null } }, { "name": "GT negate - null", "flag": { "conditions": [ { "rules": [ { "operator": "GT", "value": 5, "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": null }, "expected": { "active": false, "value": null } }, { "name": "GT negate - empty string", "flag": { "conditions": [ { "rules": [ { "operator": "GT", "value": 5, "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "" }, "expected": { "active": false, "value": null } }, { "name": "GT negate - string", "flag": { "conditions": [ { "rules": [ { "operator": "GT", "value": 5, "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "bar" }, "expected": { "active": false, "value": null } }, { "name": "GT negate - zero as string", "flag": { "conditions": [ { "rules": [ { "operator": "GT", "value": 5, "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "0" }, "expected": { "active": false, "value": null } }, { "name": "GT negate - one as string", "flag": { "conditions": [ { "rules": [ { "operator": "GT", "value": 5, "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "1" }, "expected": { "active": false, "value": null } }, { "name": "GT negate - true as string", "flag": { "conditions": [ { "rules": [ { "operator": "GT", "value": 5, "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "true" }, "expected": { "active": false, "value": null } }, { "name": "GT negate - false as string", "flag": { "conditions": [ { "rules": [ { "operator": "GT", "value": 5, "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "false" }, "expected": { "active": false, "value": null } }, { "name": "GT negate - true", "flag": { "conditions": [ { "rules": [ { "operator": "GT", "value": 5, "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": true }, "expected": { "active": false, "value": null } }, { "name": "GT negate - false", "flag": { "conditions": [ { "rules": [ { "operator": "GT", "value": 5, "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": false }, "expected": { "active": false, "value": null } }, { "name": "GT negate - object", "flag": { "conditions": [ { "rules": [ { "operator": "GT", "value": 5, "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": {} }, "expected": { "active": false, "value": null } }, { "name": "GT negate - array", "flag": { "conditions": [ { "rules": [ { "operator": "GT", "value": 5, "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": [] }, "expected": { "active": false, "value": null } }, { "name": "LT - smaller", "flag": { "conditions": [ { "rules": [ { "operator": "LT", "value": 5, "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": 0 }, "expected": { "active": true, "value": true } }, { "name": "LT - equal", "flag": { "conditions": [ { "rules": [ { "operator": "LT", "value": 5, "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": 5 }, "expected": { "active": false, "value": null } }, { "name": "LT - larger", "flag": { "conditions": [ { "rules": [ { "operator": "LT", "value": 5, "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": 10 }, "expected": { "active": false, "value": null } }, { "name": "LT - undefined", "flag": { "conditions": [ { "rules": [ { "operator": "LT", "value": 5, "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": {}, "expected": { "active": false, "value": null } }, { "name": "LT - null", "flag": { "conditions": [ { "rules": [ { "operator": "LT", "value": 5, "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": null }, "expected": { "active": false, "value": null } }, { "name": "LT - empty string", "flag": { "conditions": [ { "rules": [ { "operator": "LT", "value": 5, "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "" }, "expected": { "active": false, "value": null } }, { "name": "LT - string", "flag": { "conditions": [ { "rules": [ { "operator": "LT", "value": 5, "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "bar" }, "expected": { "active": false, "value": null } }, { "name": "LT - zero as string", "flag": { "conditions": [ { "rules": [ { "operator": "LT", "value": 5, "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "0" }, "expected": { "active": false, "value": null } }, { "name": "LT - one as string", "flag": { "conditions": [ { "rules": [ { "operator": "LT", "value": 5, "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "1" }, "expected": { "active": false, "value": null } }, { "name": "LT - true as string", "flag": { "conditions": [ { "rules": [ { "operator": "LT", "value": 5, "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "true" }, "expected": { "active": false, "value": null } }, { "name": "LT - false as string", "flag": { "conditions": [ { "rules": [ { "operator": "LT", "value": 5, "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "false" }, "expected": { "active": false, "value": null } }, { "name": "LT - true", "flag": { "conditions": [ { "rules": [ { "operator": "LT", "value": 5, "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": true }, "expected": { "active": false, "value": null } }, { "name": "LT - false", "flag": { "conditions": [ { "rules": [ { "operator": "LT", "value": 5, "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": false }, "expected": { "active": false, "value": null } }, { "name": "LT - object", "flag": { "conditions": [ { "rules": [ { "operator": "LT", "value": 5, "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": {} }, "expected": { "active": false, "value": null } }, { "name": "LT - array", "flag": { "conditions": [ { "rules": [ { "operator": "LT", "value": 5, "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": [] }, "expected": { "active": false, "value": null } }, { "name": "LT negate - smaller", "flag": { "conditions": [ { "rules": [ { "operator": "LT", "value": 5, "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": 0 }, "expected": { "active": false, "value": null } }, { "name": "LT negate - equal", "flag": { "conditions": [ { "rules": [ { "operator": "LT", "value": 5, "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": 5 }, "expected": { "active": true, "value": true } }, { "name": "LT negate - larger", "flag": { "conditions": [ { "rules": [ { "operator": "LT", "value": 5, "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": 10 }, "expected": { "active": true, "value": true } }, { "name": "LT negate - undefined", "flag": { "conditions": [ { "rules": [ { "operator": "LT", "value": 5, "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": {}, "expected": { "active": false, "value": null } }, { "name": "LT negate - null", "flag": { "conditions": [ { "rules": [ { "operator": "LT", "value": 5, "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": null }, "expected": { "active": false, "value": null } }, { "name": "LT negate - empty string", "flag": { "conditions": [ { "rules": [ { "operator": "LT", "value": 5, "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "" }, "expected": { "active": false, "value": null } }, { "name": "LT negate - string", "flag": { "conditions": [ { "rules": [ { "operator": "LT", "value": 5, "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "bar" }, "expected": { "active": false, "value": null } }, { "name": "LT negate - zero as string", "flag": { "conditions": [ { "rules": [ { "operator": "LT", "value": 5, "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "0" }, "expected": { "active": false, "value": null } }, { "name": "LT negate - one as string", "flag": { "conditions": [ { "rules": [ { "operator": "LT", "value": 5, "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "1" }, "expected": { "active": false, "value": null } }, { "name": "LT negate - true as string", "flag": { "conditions": [ { "rules": [ { "operator": "LT", "value": 5, "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "true" }, "expected": { "active": false, "value": null } }, { "name": "LT negate - false as string", "flag": { "conditions": [ { "rules": [ { "operator": "LT", "value": 5, "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "false" }, "expected": { "active": false, "value": null } }, { "name": "LT negate - true", "flag": { "conditions": [ { "rules": [ { "operator": "LT", "value": 5, "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": true }, "expected": { "active": false, "value": null } }, { "name": "LT negate - false", "flag": { "conditions": [ { "rules": [ { "operator": "LT", "value": 5, "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": false }, "expected": { "active": false, "value": null } }, { "name": "LT negate - object", "flag": { "conditions": [ { "rules": [ { "operator": "LT", "value": 5, "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": {} }, "expected": { "active": false, "value": null } }, { "name": "LT negate - array", "flag": { "conditions": [ { "rules": [ { "operator": "LT", "value": 5, "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": [] }, "expected": { "active": false, "value": null } }, { "name": "TRUE - true", "flag": { "conditions": [ { "rules": [ { "operator": "TRUE", "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": true }, "expected": { "active": true, "value": true } }, { "name": "TRUE - false", "flag": { "conditions": [ { "rules": [ { "operator": "TRUE", "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": false }, "expected": { "active": false, "value": null } }, { "name": "TRUE - undefined", "flag": { "conditions": [ { "rules": [ { "operator": "TRUE", "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": {}, "expected": { "active": false, "value": null } }, { "name": "TRUE - null", "flag": { "conditions": [ { "rules": [ { "operator": "TRUE", "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": null }, "expected": { "active": false, "value": null } }, { "name": "TRUE - empty string", "flag": { "conditions": [ { "rules": [ { "operator": "TRUE", "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "" }, "expected": { "active": false, "value": null } }, { "name": "TRUE - string", "flag": { "conditions": [ { "rules": [ { "operator": "TRUE", "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "bar" }, "expected": { "active": false, "value": null } }, { "name": "TRUE - zero as string", "flag": { "conditions": [ { "rules": [ { "operator": "TRUE", "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "0" }, "expected": { "active": false, "value": null } }, { "name": "TRUE - one as string", "flag": { "conditions": [ { "rules": [ { "operator": "TRUE", "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "1" }, "expected": { "active": false, "value": null } }, { "name": "TRUE - true as string", "flag": { "conditions": [ { "rules": [ { "operator": "TRUE", "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "true" }, "expected": { "active": false, "value": null } }, { "name": "TRUE - false as string", "flag": { "conditions": [ { "rules": [ { "operator": "TRUE", "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "false" }, "expected": { "active": false, "value": null } }, { "name": "TRUE - zero", "flag": { "conditions": [ { "rules": [ { "operator": "TRUE", "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": 0 }, "expected": { "active": false, "value": null } }, { "name": "TRUE - one", "flag": { "conditions": [ { "rules": [ { "operator": "TRUE", "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": 1 }, "expected": { "active": false, "value": null } }, { "name": "TRUE - object", "flag": { "conditions": [ { "rules": [ { "operator": "TRUE", "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": {} }, "expected": { "active": false, "value": null } }, { "name": "TRUE - array", "flag": { "conditions": [ { "rules": [ { "operator": "TRUE", "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": [] }, "expected": { "active": false, "value": null } }, { "name": "TRUE negate - true", "flag": { "conditions": [ { "rules": [ { "operator": "TRUE", "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": true }, "expected": { "active": false, "value": null } }, { "name": "TRUE negate - false", "flag": { "conditions": [ { "rules": [ { "operator": "TRUE", "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": false }, "expected": { "active": true, "value": true } }, { "name": "TRUE negate - undefined", "flag": { "conditions": [ { "rules": [ { "operator": "TRUE", "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": {}, "expected": { "active": false, "value": null } }, { "name": "TRUE negate - null", "flag": { "conditions": [ { "rules": [ { "operator": "TRUE", "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": null }, "expected": { "active": false, "value": null } }, { "name": "TRUE negate - empty string", "flag": { "conditions": [ { "rules": [ { "operator": "TRUE", "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "" }, "expected": { "active": false, "value": null } }, { "name": "TRUE negate - string", "flag": { "conditions": [ { "rules": [ { "operator": "TRUE", "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "bar" }, "expected": { "active": false, "value": null } }, { "name": "TRUE negate - zero as string", "flag": { "conditions": [ { "rules": [ { "operator": "TRUE", "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "0" }, "expected": { "active": false, "value": null } }, { "name": "TRUE negate - one as string", "flag": { "conditions": [ { "rules": [ { "operator": "TRUE", "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "1" }, "expected": { "active": false, "value": null } }, { "name": "TRUE negate - true as string", "flag": { "conditions": [ { "rules": [ { "operator": "TRUE", "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "true" }, "expected": { "active": false, "value": null } }, { "name": "TRUE negate - false as string", "flag": { "conditions": [ { "rules": [ { "operator": "TRUE", "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "false" }, "expected": { "active": false, "value": null } }, { "name": "TRUE negate - zero", "flag": { "conditions": [ { "rules": [ { "operator": "TRUE", "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": 0 }, "expected": { "active": false, "value": null } }, { "name": "TRUE negate - one", "flag": { "conditions": [ { "rules": [ { "operator": "TRUE", "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": 1 }, "expected": { "active": false, "value": null } }, { "name": "TRUE negate - object", "flag": { "conditions": [ { "rules": [ { "operator": "TRUE", "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": {} }, "expected": { "active": false, "value": null } }, { "name": "TRUE negate - array", "flag": { "conditions": [ { "rules": [ { "operator": "TRUE", "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": [] }, "expected": { "active": false, "value": null } }, { "name": "ARR_OVERLAP - empty array", "flag": { "conditions": [ { "rules": [ { "operator": "ARR_OVERLAP", "values": ["bar", "baz"], "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": [] }, "expected": { "active": false, "value": null } }, { "name": "ARR_OVERLAP - no overlap", "flag": { "conditions": [ { "rules": [ { "operator": "ARR_OVERLAP", "values": ["bar", "baz"], "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": ["foo", "--"] }, "expected": { "active": false, "value": null } }, { "name": "ARR_OVERLAP - one match", "flag": { "conditions": [ { "rules": [ { "operator": "ARR_OVERLAP", "values": ["bar", "baz"], "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": ["foo", "bar"] }, "expected": { "active": true, "value": true } }, { "name": "ARR_OVERLAP - two matches", "flag": { "conditions": [ { "rules": [ { "operator": "ARR_OVERLAP", "values": ["bar", "baz"], "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": ["baz", "foo", "bar"] }, "expected": { "active": true, "value": true } }, { "name": "ARR_OVERLAP - one other match", "flag": { "conditions": [ { "rules": [ { "operator": "ARR_OVERLAP", "values": ["bar", "baz"], "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": ["baz", "foo"] }, "expected": { "active": true, "value": true } }, { "name": "ARR_OVERLAP - single element match", "flag": { "conditions": [ { "rules": [ { "operator": "ARR_OVERLAP", "values": ["bar", "baz"], "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": ["baz"] }, "expected": { "active": true, "value": true } }, { "name": "ARR_OVERLAP - uppercase", "flag": { "conditions": [ { "rules": [ { "operator": "ARR_OVERLAP", "values": ["bar", "baz"], "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": ["bAz"] }, "expected": { "active": false, "value": null } }, { "name": "ARR_OVERLAP - accent", "flag": { "conditions": [ { "rules": [ { "operator": "ARR_OVERLAP", "values": ["bar", "baz"], "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": ["bàz"] }, "expected": { "active": false, "value": null } }, { "name": "ARR_OVERLAP - uppercase accent", "flag": { "conditions": [ { "rules": [ { "operator": "ARR_OVERLAP", "values": ["bar", "baz"], "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": ["bÁz"] }, "expected": { "active": false, "value": null } }, { "name": "ARR_OVERLAP - undefined", "flag": { "conditions": [ { "rules": [ { "operator": "ARR_OVERLAP", "values": ["bar", "baz"], "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": {}, "expected": { "active": false, "value": null } }, { "name": "ARR_OVERLAP - null", "flag": { "conditions": [ { "rules": [ { "operator": "ARR_OVERLAP", "values": ["bar", "baz"], "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": null }, "expected": { "active": false, "value": null } }, { "name": "ARR_OVERLAP - empty string", "flag": { "conditions": [ { "rules": [ { "operator": "ARR_OVERLAP", "values": ["bar", "baz"], "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "" }, "expected": { "active": false, "value": null } }, { "name": "ARR_OVERLAP - string", "flag": { "conditions": [ { "rules": [ { "operator": "ARR_OVERLAP", "values": ["bar", "baz"], "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "bar" }, "expected": { "active": false, "value": null } }, { "name": "ARR_OVERLAP - zero as string", "flag": { "conditions": [ { "rules": [ { "operator": "ARR_OVERLAP", "values": ["bar", "baz"], "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "0" }, "expected": { "active": false, "value": null } }, { "name": "ARR_OVERLAP - one as string", "flag": { "conditions": [ { "rules": [ { "operator": "ARR_OVERLAP", "values": ["bar", "baz"], "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "1" }, "expected": { "active": false, "value": null } }, { "name": "ARR_OVERLAP - true as string", "flag": { "conditions": [ { "rules": [ { "operator": "ARR_OVERLAP", "values": ["bar", "baz"], "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "true" }, "expected": { "active": false, "value": null } }, { "name": "ARR_OVERLAP - false as string", "flag": { "conditions": [ { "rules": [ { "operator": "ARR_OVERLAP", "values": ["bar", "baz"], "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "false" }, "expected": { "active": false, "value": null } }, { "name": "ARR_OVERLAP - zero", "flag": { "conditions": [ { "rules": [ { "operator": "ARR_OVERLAP", "values": ["bar", "baz"], "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": 0 }, "expected": { "active": false, "value": null } }, { "name": "ARR_OVERLAP - one", "flag": { "conditions": [ { "rules": [ { "operator": "ARR_OVERLAP", "values": ["bar", "baz"], "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": 1 }, "expected": { "active": false, "value": null } }, { "name": "ARR_OVERLAP - true", "flag": { "conditions": [ { "rules": [ { "operator": "ARR_OVERLAP", "values": ["bar", "baz"], "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": true }, "expected": { "active": false, "value": null } }, { "name": "ARR_OVERLAP - false", "flag": { "conditions": [ { "rules": [ { "operator": "ARR_OVERLAP", "values": ["bar", "baz"], "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": false }, "expected": { "active": false, "value": null } }, { "name": "ARR_OVERLAP - object", "flag": { "conditions": [ { "rules": [ { "operator": "ARR_OVERLAP", "values": ["bar", "baz"], "negate": false, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": {} }, "expected": { "active": false, "value": null } }, { "name": "ARR_OVERLAP negate - empty array", "flag": { "conditions": [ { "rules": [ { "operator": "ARR_OVERLAP", "values": ["bar", "baz"], "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": [] }, "expected": { "active": true, "value": true } }, { "name": "ARR_OVERLAP negate - no overlap", "flag": { "conditions": [ { "rules": [ { "operator": "ARR_OVERLAP", "values": ["bar", "baz"], "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": ["foo", "--"] }, "expected": { "active": true, "value": true } }, { "name": "ARR_OVERLAP negate - one match", "flag": { "conditions": [ { "rules": [ { "operator": "ARR_OVERLAP", "values": ["bar", "baz"], "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": ["foo", "bar"] }, "expected": { "active": false, "value": null } }, { "name": "ARR_OVERLAP negate - two matches", "flag": { "conditions": [ { "rules": [ { "operator": "ARR_OVERLAP", "values": ["bar", "baz"], "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": ["baz", "foo", "bar"] }, "expected": { "active": false, "value": null } }, { "name": "ARR_OVERLAP negate - one other match", "flag": { "conditions": [ { "rules": [ { "operator": "ARR_OVERLAP", "values": ["bar", "baz"], "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": ["baz", "foo"] }, "expected": { "active": false, "value": null } }, { "name": "ARR_OVERLAP negate - single element match", "flag": { "conditions": [ { "rules": [ { "operator": "ARR_OVERLAP", "values": ["bar", "baz"], "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": ["baz"] }, "expected": { "active": false, "value": null } }, { "name": "ARR_OVERLAP negate - uppercase", "flag": { "conditions": [ { "rules": [ { "operator": "ARR_OVERLAP", "values": ["bar", "baz"], "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": ["bAz"] }, "expected": { "active": true, "value": true } }, { "name": "ARR_OVERLAP negate - accent", "flag": { "conditions": [ { "rules": [ { "operator": "ARR_OVERLAP", "values": ["bar", "baz"], "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": ["bàz"] }, "expected": { "active": true, "value": true } }, { "name": "ARR_OVERLAP negate - uppercase accent", "flag": { "conditions": [ { "rules": [ { "operator": "ARR_OVERLAP", "values": ["bar", "baz"], "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": ["bÁz"] }, "expected": { "active": true, "value": true } }, { "name": "ARR_OVERLAP negate - undefined", "flag": { "conditions": [ { "rules": [ { "operator": "ARR_OVERLAP", "values": ["bar", "baz"], "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": {}, "expected": { "active": false, "value": null } }, { "name": "ARR_OVERLAP negate - null", "flag": { "conditions": [ { "rules": [ { "operator": "ARR_OVERLAP", "values": ["bar", "baz"], "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": null }, "expected": { "active": false, "value": null } }, { "name": "ARR_OVERLAP negate - empty string", "flag": { "conditions": [ { "rules": [ { "operator": "ARR_OVERLAP", "values": ["bar", "baz"], "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "" }, "expected": { "active": false, "value": null } }, { "name": "ARR_OVERLAP negate - string", "flag": { "conditions": [ { "rules": [ { "operator": "ARR_OVERLAP", "values": ["bar", "baz"], "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "bar" }, "expected": { "active": false, "value": null } }, { "name": "ARR_OVERLAP negate - zero as string", "flag": { "conditions": [ { "rules": [ { "operator": "ARR_OVERLAP", "values": ["bar", "baz"], "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "0" }, "expected": { "active": false, "value": null } }, { "name": "ARR_OVERLAP negate - one as string", "flag": { "conditions": [ { "rules": [ { "operator": "ARR_OVERLAP", "values": ["bar", "baz"], "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "1" }, "expected": { "active": false, "value": null } }, { "name": "ARR_OVERLAP negate - true as string", "flag": { "conditions": [ { "rules": [ { "operator": "ARR_OVERLAP", "values": ["bar", "baz"], "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "true" }, "expected": { "active": false, "value": null } }, { "name": "ARR_OVERLAP negate - false as string", "flag": { "conditions": [ { "rules": [ { "operator": "ARR_OVERLAP", "values": ["bar", "baz"], "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "false" }, "expected": { "active": false, "value": null } }, { "name": "ARR_OVERLAP negate - zero", "flag": { "conditions": [ { "rules": [ { "operator": "ARR_OVERLAP", "values": ["bar", "baz"], "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": 0 }, "expected": { "active": false, "value": null } }, { "name": "ARR_OVERLAP negate - one", "flag": { "conditions": [ { "rules": [ { "operator": "ARR_OVERLAP", "values": ["bar", "baz"], "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": 1 }, "expected": { "active": false, "value": null } }, { "name": "ARR_OVERLAP negate - true", "flag": { "conditions": [ { "rules": [ { "operator": "ARR_OVERLAP", "values": ["bar", "baz"], "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": true }, "expected": { "active": false, "value": null } }, { "name": "ARR_OVERLAP negate - false", "flag": { "conditions": [ { "rules": [ { "operator": "ARR_OVERLAP", "values": ["bar", "baz"], "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": false }, "expected": { "active": false, "value": null } }, { "name": "ARR_OVERLAP negate - object", "flag": { "conditions": [ { "rules": [ { "operator": "ARR_OVERLAP", "values": ["bar", "baz"], "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": {} }, "expected": { "active": false, "value": null } }, { "name": "DATE_AFTER - iso date before", "flag": { "conditions": [ { "rules": [ { "operator": "DATE_AFTER", "timestamp": 1649846220000, "iso": "2022-04-13T12:37:00", "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "1999-01-01" }, "expected": { "active": false, "value": null } }, { "name": "DATE_AFTER - iso date same", "flag": { "conditions": [ { "rules": [ { "operator": "DATE_AFTER", "timestamp": 1649846220000, "iso": "2022-04-13T12:37:00", "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "2022-04-13" }, "expected": { "active": true, "value": true } }, { "name": "DATE_AFTER - iso date after", "flag": { "conditions": [ { "rules": [ { "operator": "DATE_AFTER", "timestamp": 1649846220000, "iso": "2022-04-13T12:37:00", "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "2100-01-01" }, "expected": { "active": true, "value": true } }, { "name": "DATE_AFTER - same date, time before", "flag": { "conditions": [ { "rules": [ { "operator": "DATE_AFTER", "timestamp": 1649846220000, "iso": "2022-04-13T12:37:00", "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "2022-04-13T09:37" }, "expected": { "active": false, "value": null } }, { "name": "DATE_AFTER - same date, same hour / min", "flag": { "conditions": [ { "rules": [ { "operator": "DATE_AFTER", "timestamp": 1649846220000, "iso": "2022-04-13T12:37:00", "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "2022-04-13T12:37" }, "expected": { "active": true, "value": true } }, { "name": "DATE_AFTER - date after, time before", "flag": { "conditions": [ { "rules": [ { "operator": "DATE_AFTER", "timestamp": 1649846220000, "iso": "2022-04-13T12:37:00", "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "2099-01-01T23:59" }, "expected": { "active": true, "value": true } }, { "name": "DATE_AFTER - same date, time before with seconds", "flag": { "conditions": [ { "rules": [ { "operator": "DATE_AFTER", "timestamp": 1649846220000, "iso": "2022-04-13T12:37:00", "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "2022-04-13T09:37:00" }, "expected": { "active": false, "value": null } }, { "name": "DATE_AFTER - same date, same time", "flag": { "conditions": [ { "rules": [ { "operator": "DATE_AFTER", "timestamp": 1649846220000, "iso": "2022-04-13T12:37:00", "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "2022-04-13T12:37:00" }, "expected": { "active": true, "value": true } }, { "name": "DATE_AFTER - date time after", "flag": { "conditions": [ { "rules": [ { "operator": "DATE_AFTER", "timestamp": 1649846220000, "iso": "2022-04-13T12:37:00", "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "2099-01-01T23:59:00" }, "expected": { "active": true, "value": true } }, { "name": "DATE_AFTER - same date time before with Z", "flag": { "conditions": [ { "rules": [ { "operator": "DATE_AFTER", "timestamp": 1649846220000, "iso": "2022-04-13T12:37:00", "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "2022-04-13T09:37:00Z" }, "expected": { "active": false, "value": null } }, { "name": "DATE_AFTER - same date time with Z", "flag": { "conditions": [ { "rules": [ { "operator": "DATE_AFTER", "timestamp": 1649846220000, "iso": "2022-04-13T12:37:00", "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "2022-04-13T12:37:00Z" }, "expected": { "active": true, "value": true } }, { "name": "DATE_AFTER - date time after with Z", "flag": { "conditions": [ { "rules": [ { "operator": "DATE_AFTER", "timestamp": 1649846220000, "iso": "2022-04-13T12:37:00", "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "2099-01-01T23:59:00Z" }, "expected": { "active": true, "value": true } }, { "name": "DATE_AFTER - timestamp before", "flag": { "conditions": [ { "rules": [ { "operator": "DATE_AFTER", "timestamp": 1649846220000, "iso": "2022-04-13T12:37:00", "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": 1649846219 }, "expected": { "active": false, "value": null } }, { "name": "DATE_AFTER - timestamp milli before", "flag": { "conditions": [ { "rules": [ { "operator": "DATE_AFTER", "timestamp": 1649846220000, "iso": "2022-04-13T12:37:00", "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": 1649846219999 }, "expected": { "active": false, "value": null } }, { "name": "DATE_AFTER - same timestamp", "flag": { "conditions": [ { "rules": [ { "operator": "DATE_AFTER", "timestamp": 1649846220000, "iso": "2022-04-13T12:37:00", "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": 1649846220 }, "expected": { "active": true, "value": true } }, { "name": "DATE_AFTER - same timestamp milli", "flag": { "conditions": [ { "rules": [ { "operator": "DATE_AFTER", "timestamp": 1649846220000, "iso": "2022-04-13T12:37:00", "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": 1649846220000 }, "expected": { "active": true, "value": true } }, { "name": "DATE_AFTER - timestamp after", "flag": { "conditions": [ { "rules": [ { "operator": "DATE_AFTER", "timestamp": 1649846220000, "iso": "2022-04-13T12:37:00", "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": 1649846221 }, "expected": { "active": true, "value": true } }, { "name": "DATE_AFTER - timestamp milli after", "flag": { "conditions": [ { "rules": [ { "operator": "DATE_AFTER", "timestamp": 1649846220000, "iso": "2022-04-13T12:37:00", "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": 1649846220001 }, "expected": { "active": true, "value": true } }, { "name": "DATE_AFTER - undefined", "flag": { "conditions": [ { "rules": [ { "operator": "DATE_AFTER", "timestamp": 1649846220000, "iso": "2022-04-13T12:37:00", "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": {}, "expected": { "active": false, "value": null } }, { "name": "DATE_AFTER - null", "flag": { "conditions": [ { "rules": [ { "operator": "DATE_AFTER", "timestamp": 1649846220000, "iso": "2022-04-13T12:37:00", "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": null }, "expected": { "active": false, "value": null } }, { "name": "DATE_AFTER - true", "flag": { "conditions": [ { "rules": [ { "operator": "DATE_AFTER", "timestamp": 1649846220000, "iso": "2022-04-13T12:37:00", "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": true }, "expected": { "active": false, "value": null } }, { "name": "DATE_AFTER - false", "flag": { "conditions": [ { "rules": [ { "operator": "DATE_AFTER", "timestamp": 1649846220000, "iso": "2022-04-13T12:37:00", "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": false }, "expected": { "active": false, "value": null } }, { "name": "DATE_AFTER - object", "flag": { "conditions": [ { "rules": [ { "operator": "DATE_AFTER", "timestamp": 1649846220000, "iso": "2022-04-13T12:37:00", "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": {} }, "expected": { "active": false, "value": null } }, { "name": "DATE_AFTER - array", "flag": { "conditions": [ { "rules": [ { "operator": "DATE_AFTER", "timestamp": 1649846220000, "iso": "2022-04-13T12:37:00", "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": [] }, "expected": { "active": false, "value": null } }, { "name": "DATE_AFTER negate - iso date before", "flag": { "conditions": [ { "rules": [ { "operator": "DATE_AFTER", "timestamp": 1649846220000, "iso": "2022-04-13T12:37:00", "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "1999-01-01" }, "expected": { "active": true, "value": true } }, { "name": "DATE_AFTER negate - iso date same", "flag": { "conditions": [ { "rules": [ { "operator": "DATE_AFTER", "timestamp": 1649846220000, "iso": "2022-04-13T12:37:00", "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "2022-04-13" }, "expected": { "active": false, "value": null } }, { "name": "DATE_AFTER negate - iso date after", "flag": { "conditions": [ { "rules": [ { "operator": "DATE_AFTER", "timestamp": 1649846220000, "iso": "2022-04-13T12:37:00", "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "2100-01-01" }, "expected": { "active": false, "value": null } }, { "name": "DATE_AFTER negate - same date, time before", "flag": { "conditions": [ { "rules": [ { "operator": "DATE_AFTER", "timestamp": 1649846220000, "iso": "2022-04-13T12:37:00", "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "2022-04-13T09:37" }, "expected": { "active": true, "value": true } }, { "name": "DATE_AFTER negate - same date, same hour / min", "flag": { "conditions": [ { "rules": [ { "operator": "DATE_AFTER", "timestamp": 1649846220000, "iso": "2022-04-13T12:37:00", "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "2022-04-13T12:37" }, "expected": { "active": false, "value": null } }, { "name": "DATE_AFTER negate - date after, time before", "flag": { "conditions": [ { "rules": [ { "operator": "DATE_AFTER", "timestamp": 1649846220000, "iso": "2022-04-13T12:37:00", "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "2099-01-01T23:59" }, "expected": { "active": false, "value": null } }, { "name": "DATE_AFTER negate - same date, time before with seconds", "flag": { "conditions": [ { "rules": [ { "operator": "DATE_AFTER", "timestamp": 1649846220000, "iso": "2022-04-13T12:37:00", "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "2022-04-13T09:37:00" }, "expected": { "active": true, "value": true } }, { "name": "DATE_AFTER negate - same date, same time", "flag": { "conditions": [ { "rules": [ { "operator": "DATE_AFTER", "timestamp": 1649846220000, "iso": "2022-04-13T12:37:00", "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "2022-04-13T12:37:00" }, "expected": { "active": false, "value": null } }, { "name": "DATE_AFTER negate - date time after", "flag": { "conditions": [ { "rules": [ { "operator": "DATE_AFTER", "timestamp": 1649846220000, "iso": "2022-04-13T12:37:00", "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "2099-01-01T23:59:00" }, "expected": { "active": false, "value": null } }, { "name": "DATE_AFTER negate - same date time before with Z", "flag": { "conditions": [ { "rules": [ { "operator": "DATE_AFTER", "timestamp": 1649846220000, "iso": "2022-04-13T12:37:00", "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "2022-04-13T09:37:00Z" }, "expected": { "active": true, "value": true } }, { "name": "DATE_AFTER negate - same date time with Z", "flag": { "conditions": [ { "rules": [ { "operator": "DATE_AFTER", "timestamp": 1649846220000, "iso": "2022-04-13T12:37:00", "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "2022-04-13T12:37:00Z" }, "expected": { "active": false, "value": null } }, { "name": "DATE_AFTER negate - date time after with Z", "flag": { "conditions": [ { "rules": [ { "operator": "DATE_AFTER", "timestamp": 1649846220000, "iso": "2022-04-13T12:37:00", "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "2099-01-01T23:59:00Z" }, "expected": { "active": false, "value": null } }, { "name": "DATE_AFTER negate - timestamp before", "flag": { "conditions": [ { "rules": [ { "operator": "DATE_AFTER", "timestamp": 1649846220000, "iso": "2022-04-13T12:37:00", "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": 1649846219 }, "expected": { "active": true, "value": true } }, { "name": "DATE_AFTER negate - timestamp milli before", "flag": { "conditions": [ { "rules": [ { "operator": "DATE_AFTER", "timestamp": 1649846220000, "iso": "2022-04-13T12:37:00", "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": 1649846219999 }, "expected": { "active": true, "value": true } }, { "name": "DATE_AFTER negate - same timestamp", "flag": { "conditions": [ { "rules": [ { "operator": "DATE_AFTER", "timestamp": 1649846220000, "iso": "2022-04-13T12:37:00", "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": 1649846220 }, "expected": { "active": false, "value": null } }, { "name": "DATE_AFTER negate - same timestamp milli", "flag": { "conditions": [ { "rules": [ { "operator": "DATE_AFTER", "timestamp": 1649846220000, "iso": "2022-04-13T12:37:00", "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": 1649846220000 }, "expected": { "active": false, "value": null } }, { "name": "DATE_AFTER negate - timestamp after", "flag": { "conditions": [ { "rules": [ { "operator": "DATE_AFTER", "timestamp": 1649846220000, "iso": "2022-04-13T12:37:00", "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": 1649846221 }, "expected": { "active": false, "value": null } }, { "name": "DATE_AFTER negate - timestamp milli after", "flag": { "conditions": [ { "rules": [ { "operator": "DATE_AFTER", "timestamp": 1649846220000, "iso": "2022-04-13T12:37:00", "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": 1649846220001 }, "expected": { "active": false, "value": null } }, { "name": "DATE_AFTER negate - undefined", "flag": { "conditions": [ { "rules": [ { "operator": "DATE_AFTER", "timestamp": 1649846220000, "iso": "2022-04-13T12:37:00", "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": {}, "expected": { "active": false, "value": null } }, { "name": "DATE_AFTER negate - null", "flag": { "conditions": [ { "rules": [ { "operator": "DATE_AFTER", "timestamp": 1649846220000, "iso": "2022-04-13T12:37:00", "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": null }, "expected": { "active": false, "value": null } }, { "name": "DATE_AFTER negate - true", "flag": { "conditions": [ { "rules": [ { "operator": "DATE_AFTER", "timestamp": 1649846220000, "iso": "2022-04-13T12:37:00", "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": true }, "expected": { "active": false, "value": null } }, { "name": "DATE_AFTER negate - false", "flag": { "conditions": [ { "rules": [ { "operator": "DATE_AFTER", "timestamp": 1649846220000, "iso": "2022-04-13T12:37:00", "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": false }, "expected": { "active": false, "value": null } }, { "name": "DATE_AFTER negate - object", "flag": { "conditions": [ { "rules": [ { "operator": "DATE_AFTER", "timestamp": 1649846220000, "iso": "2022-04-13T12:37:00", "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": {} }, "expected": { "active": false, "value": null } }, { "name": "DATE_AFTER negate - array", "flag": { "conditions": [ { "rules": [ { "operator": "DATE_AFTER", "timestamp": 1649846220000, "iso": "2022-04-13T12:37:00", "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": [] }, "expected": { "active": false, "value": null } }, { "name": "DATE_BEFORE - iso date before", "flag": { "conditions": [ { "rules": [ { "operator": "DATE_BEFORE", "timestamp": 1649846220000, "iso": "2022-04-13T12:37:00", "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "2022-04-12" }, "expected": { "active": true, "value": true } }, { "name": "DATE_BEFORE - iso date same", "flag": { "conditions": [ { "rules": [ { "operator": "DATE_BEFORE", "timestamp": 1649846220000, "iso": "2022-04-13T12:37:00", "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "2022-04-13" }, "expected": { "active": true, "value": true } }, { "name": "DATE_BEFORE - iso date after", "flag": { "conditions": [ { "rules": [ { "operator": "DATE_BEFORE", "timestamp": 1649846220000, "iso": "2022-04-13T12:37:00", "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "2022-04-14" }, "expected": { "active": false, "value": null } }, { "name": "DATE_BEFORE - same date, time after", "flag": { "conditions": [ { "rules": [ { "operator": "DATE_BEFORE", "timestamp": 1649846220000, "iso": "2022-04-13T12:37:00", "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "2022-04-13T23:59" }, "expected": { "active": false, "value": null } }, { "name": "DATE_BEFORE - same date, same time / hour", "flag": { "conditions": [ { "rules": [ { "operator": "DATE_BEFORE", "timestamp": 1649846220000, "iso": "2022-04-13T12:37:00", "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "2022-04-13T12:37" }, "expected": { "active": true, "value": true } }, { "name": "DATE_BEFORE - date time before", "flag": { "conditions": [ { "rules": [ { "operator": "DATE_BEFORE", "timestamp": 1649846220000, "iso": "2022-04-13T12:37:00", "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "2001-01-01T09:24" }, "expected": { "active": true, "value": true } }, { "name": "DATE_BEFORE - same date, time after with second", "flag": { "conditions": [ { "rules": [ { "operator": "DATE_BEFORE", "timestamp": 1649846220000, "iso": "2022-04-13T12:37:00", "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "2022-04-13T23:59:00" }, "expected": { "active": false, "value": null } }, { "name": "DATE_BEFORE - same date time", "flag": { "conditions": [ { "rules": [ { "operator": "DATE_BEFORE", "timestamp": 1649846220000, "iso": "2022-04-13T12:37:00", "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "2022-04-13T12:37:00" }, "expected": { "active": true, "value": true } }, { "name": "DATE_BEFORE - date time before with second", "flag": { "conditions": [ { "rules": [ { "operator": "DATE_BEFORE", "timestamp": 1649846220000, "iso": "2022-04-13T12:37:00", "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "2001-01-01T09:24:00" }, "expected": { "active": true, "value": true } }, { "name": "DATE_BEFORE - same date, time after with Z", "flag": { "conditions": [ { "rules": [ { "operator": "DATE_BEFORE", "timestamp": 1649846220000, "iso": "2022-04-13T12:37:00", "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "2022-04-13T23:59:00Z" }, "expected": { "active": false, "value": null } }, { "name": "DATE_BEFORE - same date time with Z", "flag": { "conditions": [ { "rules": [ { "operator": "DATE_BEFORE", "timestamp": 1649846220000, "iso": "2022-04-13T12:37:00", "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "2022-04-13T12:37:00Z" }, "expected": { "active": true, "value": true } }, { "name": "DATE_BEFORE - date time before with Z", "flag": { "conditions": [ { "rules": [ { "operator": "DATE_BEFORE", "timestamp": 1649846220000, "iso": "2022-04-13T12:37:00", "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "2001-01-01T09:24:00Z" }, "expected": { "active": true, "value": true } }, { "name": "DATE_BEFORE - timestamp before", "flag": { "conditions": [ { "rules": [ { "operator": "DATE_BEFORE", "timestamp": 1649846220000, "iso": "2022-04-13T12:37:00", "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": 1649846219 }, "expected": { "active": true, "value": true } }, { "name": "DATE_BEFORE - timestamp milli before", "flag": { "conditions": [ { "rules": [ { "operator": "DATE_BEFORE", "timestamp": 1649846220000, "iso": "2022-04-13T12:37:00", "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": 1649846219999 }, "expected": { "active": true, "value": true } }, { "name": "DATE_BEFORE - same timestamp", "flag": { "conditions": [ { "rules": [ { "operator": "DATE_BEFORE", "timestamp": 1649846220000, "iso": "2022-04-13T12:37:00", "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": 1649846220 }, "expected": { "active": true, "value": true } }, { "name": "DATE_BEFORE - same timestamp milli", "flag": { "conditions": [ { "rules": [ { "operator": "DATE_BEFORE", "timestamp": 1649846220000, "iso": "2022-04-13T12:37:00", "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": 1649846220000 }, "expected": { "active": true, "value": true } }, { "name": "DATE_BEFORE - timestamp after", "flag": { "conditions": [ { "rules": [ { "operator": "DATE_BEFORE", "timestamp": 1649846220000, "iso": "2022-04-13T12:37:00", "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": 1649846221 }, "expected": { "active": false, "value": null } }, { "name": "DATE_BEFORE - timestamp milli after", "flag": { "conditions": [ { "rules": [ { "operator": "DATE_BEFORE", "timestamp": 1649846220000, "iso": "2022-04-13T12:37:00", "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": 1649846220001 }, "expected": { "active": false, "value": null } }, { "name": "DATE_BEFORE - undefined", "flag": { "conditions": [ { "rules": [ { "operator": "DATE_BEFORE", "timestamp": 1649846220000, "iso": "2022-04-13T12:37:00", "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": {}, "expected": { "active": false, "value": null } }, { "name": "DATE_BEFORE - null", "flag": { "conditions": [ { "rules": [ { "operator": "DATE_BEFORE", "timestamp": 1649846220000, "iso": "2022-04-13T12:37:00", "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": null }, "expected": { "active": false, "value": null } }, { "name": "DATE_BEFORE - true", "flag": { "conditions": [ { "rules": [ { "operator": "DATE_BEFORE", "timestamp": 1649846220000, "iso": "2022-04-13T12:37:00", "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": true }, "expected": { "active": false, "value": null } }, { "name": "DATE_BEFORE - false", "flag": { "conditions": [ { "rules": [ { "operator": "DATE_BEFORE", "timestamp": 1649846220000, "iso": "2022-04-13T12:37:00", "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": false }, "expected": { "active": false, "value": null } }, { "name": "DATE_BEFORE - object", "flag": { "conditions": [ { "rules": [ { "operator": "DATE_BEFORE", "timestamp": 1649846220000, "iso": "2022-04-13T12:37:00", "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": {} }, "expected": { "active": false, "value": null } }, { "name": "DATE_BEFORE - array", "flag": { "conditions": [ { "rules": [ { "operator": "DATE_BEFORE", "timestamp": 1649846220000, "iso": "2022-04-13T12:37:00", "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": [] }, "expected": { "active": false, "value": null } }, { "name": "DATE_BEFORE negate - iso date before", "flag": { "conditions": [ { "rules": [ { "operator": "DATE_BEFORE", "timestamp": 1649846220000, "iso": "2022-04-13T12:37:00", "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "2022-04-12" }, "expected": { "active": false, "value": null } }, { "name": "DATE_BEFORE negate - iso date same", "flag": { "conditions": [ { "rules": [ { "operator": "DATE_BEFORE", "timestamp": 1649846220000, "iso": "2022-04-13T12:37:00", "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "2022-04-13" }, "expected": { "active": false, "value": null } }, { "name": "DATE_BEFORE negate - iso date after", "flag": { "conditions": [ { "rules": [ { "operator": "DATE_BEFORE", "timestamp": 1649846220000, "iso": "2022-04-13T12:37:00", "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "2022-04-14" }, "expected": { "active": true, "value": true } }, { "name": "DATE_BEFORE negate - same date, time after", "flag": { "conditions": [ { "rules": [ { "operator": "DATE_BEFORE", "timestamp": 1649846220000, "iso": "2022-04-13T12:37:00", "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "2022-04-13T23:59" }, "expected": { "active": true, "value": true } }, { "name": "DATE_BEFORE negate - same date, same time / hour", "flag": { "conditions": [ { "rules": [ { "operator": "DATE_BEFORE", "timestamp": 1649846220000, "iso": "2022-04-13T12:37:00", "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "2022-04-13T12:37" }, "expected": { "active": false, "value": null } }, { "name": "DATE_BEFORE negate - date time before", "flag": { "conditions": [ { "rules": [ { "operator": "DATE_BEFORE", "timestamp": 1649846220000, "iso": "2022-04-13T12:37:00", "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "2001-01-01T09:24" }, "expected": { "active": false, "value": null } }, { "name": "DATE_BEFORE negate - same date, time after with second", "flag": { "conditions": [ { "rules": [ { "operator": "DATE_BEFORE", "timestamp": 1649846220000, "iso": "2022-04-13T12:37:00", "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "2022-04-13T23:59:00" }, "expected": { "active": true, "value": true } }, { "name": "DATE_BEFORE negate - same date time", "flag": { "conditions": [ { "rules": [ { "operator": "DATE_BEFORE", "timestamp": 1649846220000, "iso": "2022-04-13T12:37:00", "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "2022-04-13T12:37:00" }, "expected": { "active": false, "value": null } }, { "name": "DATE_BEFORE negate - date time before with second", "flag": { "conditions": [ { "rules": [ { "operator": "DATE_BEFORE", "timestamp": 1649846220000, "iso": "2022-04-13T12:37:00", "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "2001-01-01T09:24:00" }, "expected": { "active": false, "value": null } }, { "name": "DATE_BEFORE negate - same date, time after with Z", "flag": { "conditions": [ { "rules": [ { "operator": "DATE_BEFORE", "timestamp": 1649846220000, "iso": "2022-04-13T12:37:00", "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "2022-04-13T23:59:00Z" }, "expected": { "active": true, "value": true } }, { "name": "DATE_BEFORE negate - same date time with Z", "flag": { "conditions": [ { "rules": [ { "operator": "DATE_BEFORE", "timestamp": 1649846220000, "iso": "2022-04-13T12:37:00", "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "2022-04-13T12:37:00Z" }, "expected": { "active": false, "value": null } }, { "name": "DATE_BEFORE negate - date time before with Z", "flag": { "conditions": [ { "rules": [ { "operator": "DATE_BEFORE", "timestamp": 1649846220000, "iso": "2022-04-13T12:37:00", "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "2001-01-01T09:24:00Z" }, "expected": { "active": false, "value": null } }, { "name": "DATE_BEFORE negate - timestamp before", "flag": { "conditions": [ { "rules": [ { "operator": "DATE_BEFORE", "timestamp": 1649846220000, "iso": "2022-04-13T12:37:00", "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": 1649846219 }, "expected": { "active": false, "value": null } }, { "name": "DATE_BEFORE negate - timestamp milli before", "flag": { "conditions": [ { "rules": [ { "operator": "DATE_BEFORE", "timestamp": 1649846220000, "iso": "2022-04-13T12:37:00", "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": 1649846219999 }, "expected": { "active": false, "value": null } }, { "name": "DATE_BEFORE negate - same timestamp", "flag": { "conditions": [ { "rules": [ { "operator": "DATE_BEFORE", "timestamp": 1649846220000, "iso": "2022-04-13T12:37:00", "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": 1649846220 }, "expected": { "active": false, "value": null } }, { "name": "DATE_BEFORE negate - same timestamp milli", "flag": { "conditions": [ { "rules": [ { "operator": "DATE_BEFORE", "timestamp": 1649846220000, "iso": "2022-04-13T12:37:00", "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": 1649846220000 }, "expected": { "active": false, "value": null } }, { "name": "DATE_BEFORE negate - timestamp after", "flag": { "conditions": [ { "rules": [ { "operator": "DATE_BEFORE", "timestamp": 1649846220000, "iso": "2022-04-13T12:37:00", "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": 1649846221 }, "expected": { "active": true, "value": true } }, { "name": "DATE_BEFORE negate - timestamp milli after", "flag": { "conditions": [ { "rules": [ { "operator": "DATE_BEFORE", "timestamp": 1649846220000, "iso": "2022-04-13T12:37:00", "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": 1649846220001 }, "expected": { "active": true, "value": true } }, { "name": "DATE_BEFORE negate - undefined", "flag": { "conditions": [ { "rules": [ { "operator": "DATE_BEFORE", "timestamp": 1649846220000, "iso": "2022-04-13T12:37:00", "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": {}, "expected": { "active": false, "value": null } }, { "name": "DATE_BEFORE negate - null", "flag": { "conditions": [ { "rules": [ { "operator": "DATE_BEFORE", "timestamp": 1649846220000, "iso": "2022-04-13T12:37:00", "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": null }, "expected": { "active": false, "value": null } }, { "name": "DATE_BEFORE negate - true", "flag": { "conditions": [ { "rules": [ { "operator": "DATE_BEFORE", "timestamp": 1649846220000, "iso": "2022-04-13T12:37:00", "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": true }, "expected": { "active": false, "value": null } }, { "name": "DATE_BEFORE negate - false", "flag": { "conditions": [ { "rules": [ { "operator": "DATE_BEFORE", "timestamp": 1649846220000, "iso": "2022-04-13T12:37:00", "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": false }, "expected": { "active": false, "value": null } }, { "name": "DATE_BEFORE negate - object", "flag": { "conditions": [ { "rules": [ { "operator": "DATE_BEFORE", "timestamp": 1649846220000, "iso": "2022-04-13T12:37:00", "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": {} }, "expected": { "active": false, "value": null } }, { "name": "DATE_BEFORE negate - array", "flag": { "conditions": [ { "rules": [ { "operator": "DATE_BEFORE", "timestamp": 1649846220000, "iso": "2022-04-13T12:37:00", "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": [] }, "expected": { "active": false, "value": null } }, { "name": "SEMVER_EQ - same", "flag": { "conditions": [ { "rules": [ { "operator": "SEMVER_EQ", "negate": false, "version": [1, 20, 4], "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "1.20.4" }, "expected": { "active": true, "value": true } }, { "name": "SEMVER_EQ - same with leading zeros", "flag": { "conditions": [ { "rules": [ { "operator": "SEMVER_EQ", "negate": false, "version": [1, 20, 4], "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "01.020.004" }, "expected": { "active": true, "value": true } }, { "name": "SEMVER_EQ - same with extra subversion", "flag": { "conditions": [ { "rules": [ { "operator": "SEMVER_EQ", "negate": false, "version": [1, 20, 4], "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "1.20.4.6" }, "expected": { "active": true, "value": true } }, { "name": "SEMVER_EQ - same missing patch version", "flag": { "conditions": [ { "rules": [ { "operator": "SEMVER_EQ", "negate": false, "version": [1, 20, 4], "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "1.20" }, "expected": { "active": false, "value": null } }, { "name": "SEMVER_EQ - no match minor", "flag": { "conditions": [ { "rules": [ { "operator": "SEMVER_EQ", "negate": false, "version": [1, 20, 4], "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "1.2.4" }, "expected": { "active": false, "value": null } }, { "name": "SEMVER_EQ - different", "flag": { "conditions": [ { "rules": [ { "operator": "SEMVER_EQ", "negate": false, "version": [1, 20, 4], "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "3.5.6" }, "expected": { "active": false, "value": null } }, { "name": "SEMVER_EQ - undefined", "flag": { "conditions": [ { "rules": [ { "operator": "SEMVER_EQ", "negate": false, "version": [1, 20, 4], "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": {}, "expected": { "active": false, "value": null } }, { "name": "SEMVER_EQ - null", "flag": { "conditions": [ { "rules": [ { "operator": "SEMVER_EQ", "negate": false, "version": [1, 20, 4], "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": null }, "expected": { "active": false, "value": null } }, { "name": "SEMVER_EQ - zero", "flag": { "conditions": [ { "rules": [ { "operator": "SEMVER_EQ", "negate": false, "version": [1, 20, 4], "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": 0 }, "expected": { "active": false, "value": null } }, { "name": "SEMVER_EQ - one", "flag": { "conditions": [ { "rules": [ { "operator": "SEMVER_EQ", "negate": false, "version": [1, 20, 4], "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": 1 }, "expected": { "active": false, "value": null } }, { "name": "SEMVER_EQ - true", "flag": { "conditions": [ { "rules": [ { "operator": "SEMVER_EQ", "negate": false, "version": [1, 20, 4], "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": true }, "expected": { "active": false, "value": null } }, { "name": "SEMVER_EQ - false", "flag": { "conditions": [ { "rules": [ { "operator": "SEMVER_EQ", "negate": false, "version": [1, 20, 4], "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": false }, "expected": { "active": false, "value": null } }, { "name": "SEMVER_EQ - object", "flag": { "conditions": [ { "rules": [ { "operator": "SEMVER_EQ", "negate": false, "version": [1, 20, 4], "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": {} }, "expected": { "active": false, "value": null } }, { "name": "SEMVER_EQ - array", "flag": { "conditions": [ { "rules": [ { "operator": "SEMVER_EQ", "negate": false, "version": [1, 20, 4], "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": [] }, "expected": { "active": false, "value": null } }, { "name": "SEMVER_EQ negate - same", "flag": { "conditions": [ { "rules": [ { "operator": "SEMVER_EQ", "negate": true, "version": [1, 20, 4], "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "1.20.4" }, "expected": { "active": false, "value": null } }, { "name": "SEMVER_EQ negate - same with leading zeros", "flag": { "conditions": [ { "rules": [ { "operator": "SEMVER_EQ", "negate": true, "version": [1, 20, 4], "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "01.020.004" }, "expected": { "active": false, "value": null } }, { "name": "SEMVER_EQ negate - same with extra subversion", "flag": { "conditions": [ { "rules": [ { "operator": "SEMVER_EQ", "negate": true, "version": [1, 20, 4], "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "1.20.4.6" }, "expected": { "active": false, "value": null } }, { "name": "SEMVER_EQ negate - same missing patch version", "flag": { "conditions": [ { "rules": [ { "operator": "SEMVER_EQ", "negate": true, "version": [1, 20, 4], "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "1.20" }, "expected": { "active": true, "value": true } }, { "name": "SEMVER_EQ negate - no match minor", "flag": { "conditions": [ { "rules": [ { "operator": "SEMVER_EQ", "negate": true, "version": [1, 20, 4], "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "1.2.4" }, "expected": { "active": true, "value": true } }, { "name": "SEMVER_EQ negate - different", "flag": { "conditions": [ { "rules": [ { "operator": "SEMVER_EQ", "negate": true, "version": [1, 20, 4], "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "3.5.6" }, "expected": { "active": true, "value": true } }, { "name": "SEMVER_EQ negate - undefined", "flag": { "conditions": [ { "rules": [ { "operator": "SEMVER_EQ", "negate": true, "version": [1, 20, 4], "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": {}, "expected": { "active": false, "value": null } }, { "name": "SEMVER_EQ negate - null", "flag": { "conditions": [ { "rules": [ { "operator": "SEMVER_EQ", "negate": true, "version": [1, 20, 4], "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": null }, "expected": { "active": false, "value": null } }, { "name": "SEMVER_EQ negate - zero", "flag": { "conditions": [ { "rules": [ { "operator": "SEMVER_EQ", "negate": true, "version": [1, 20, 4], "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": 0 }, "expected": { "active": false, "value": null } }, { "name": "SEMVER_EQ negate - one", "flag": { "conditions": [ { "rules": [ { "operator": "SEMVER_EQ", "negate": true, "version": [1, 20, 4], "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": 1 }, "expected": { "active": false, "value": null } }, { "name": "SEMVER_EQ negate - true", "flag": { "conditions": [ { "rules": [ { "operator": "SEMVER_EQ", "negate": true, "version": [1, 20, 4], "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": true }, "expected": { "active": false, "value": null } }, { "name": "SEMVER_EQ negate - false", "flag": { "conditions": [ { "rules": [ { "operator": "SEMVER_EQ", "negate": true, "version": [1, 20, 4], "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": false }, "expected": { "active": false, "value": null } }, { "name": "SEMVER_EQ negate - object", "flag": { "conditions": [ { "rules": [ { "operator": "SEMVER_EQ", "negate": true, "version": [1, 20, 4], "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": {} }, "expected": { "active": false, "value": null } }, { "name": "SEMVER_EQ negate - array", "flag": { "conditions": [ { "rules": [ { "operator": "SEMVER_EQ", "negate": true, "version": [1, 20, 4], "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": [] }, "expected": { "active": false, "value": null } }, { "name": "SEMVER_GTE - same", "flag": { "conditions": [ { "rules": [ { "operator": "SEMVER_GTE", "negate": false, "version": [1, 20, 4], "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "1.20.4" }, "expected": { "active": true, "value": true } }, { "name": "SEMVER_GTE - same with extra subversion", "flag": { "conditions": [ { "rules": [ { "operator": "SEMVER_GTE", "negate": false, "version": [1, 20, 4], "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "1.20.4.9" }, "expected": { "active": true, "value": true } }, { "name": "SEMVER_GTE - higher patch version", "flag": { "conditions": [ { "rules": [ { "operator": "SEMVER_GTE", "negate": false, "version": [1, 20, 4], "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "1.20.5" }, "expected": { "active": true, "value": true } }, { "name": "SEMVER_GTE - higher minor version, lower patch version", "flag": { "conditions": [ { "rules": [ { "operator": "SEMVER_GTE", "negate": false, "version": [1, 20, 4], "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "1.21.3" }, "expected": { "active": true, "value": true } }, { "name": "SEMVER_GTE - higher minor version, but smaller alphabetically", "flag": { "conditions": [ { "rules": [ { "operator": "SEMVER_GTE", "negate": false, "version": [1, 20, 4], "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "1.100.6" }, "expected": { "active": true, "value": true } }, { "name": "SEMVER_GTE - leading zero", "flag": { "conditions": [ { "rules": [ { "operator": "SEMVER_GTE", "negate": false, "version": [1, 20, 4], "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "1.0100.6" }, "expected": { "active": true, "value": true } }, { "name": "SEMVER_GTE - higher major, but lower minor and patch version", "flag": { "conditions": [ { "rules": [ { "operator": "SEMVER_GTE", "negate": false, "version": [1, 20, 4], "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "2.0.0" }, "expected": { "active": true, "value": true } }, { "name": "SEMVER_GTE - higher minor, missing patch version", "flag": { "conditions": [ { "rules": [ { "operator": "SEMVER_GTE", "negate": false, "version": [1, 20, 4], "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "1.21" }, "expected": { "active": true, "value": true } }, { "name": "SEMVER_GTE - higher major, missing minor", "flag": { "conditions": [ { "rules": [ { "operator": "SEMVER_GTE", "negate": false, "version": [1, 20, 4], "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "2" }, "expected": { "active": true, "value": true } }, { "name": "SEMVER_GTE - lower minor, but higher alphabetically", "flag": { "conditions": [ { "rules": [ { "operator": "SEMVER_GTE", "negate": false, "version": [1, 20, 4], "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "1.3.6" }, "expected": { "active": false, "value": null } }, { "name": "SEMVER_GTE - smaller patch version", "flag": { "conditions": [ { "rules": [ { "operator": "SEMVER_GTE", "negate": false, "version": [1, 20, 4], "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "1.20.3" }, "expected": { "active": false, "value": null } }, { "name": "SEMVER_GTE - same but missing patch version", "flag": { "conditions": [ { "rules": [ { "operator": "SEMVER_GTE", "negate": false, "version": [1, 20, 4], "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "1.20" }, "expected": { "active": false, "value": null } }, { "name": "SEMVER_GTE - same but missing minor version", "flag": { "conditions": [ { "rules": [ { "operator": "SEMVER_GTE", "negate": false, "version": [1, 20, 4], "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "1" }, "expected": { "active": false, "value": null } }, { "name": "SEMVER_GTE - undefined", "flag": { "conditions": [ { "rules": [ { "operator": "SEMVER_GTE", "negate": false, "version": [1, 20, 4], "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": {}, "expected": { "active": false, "value": null } }, { "name": "SEMVER_GTE - null", "flag": { "conditions": [ { "rules": [ { "operator": "SEMVER_GTE", "negate": false, "version": [1, 20, 4], "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": null }, "expected": { "active": false, "value": null } }, { "name": "SEMVER_GTE - zero", "flag": { "conditions": [ { "rules": [ { "operator": "SEMVER_GTE", "negate": false, "version": [1, 20, 4], "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": 0 }, "expected": { "active": false, "value": null } }, { "name": "SEMVER_GTE - one", "flag": { "conditions": [ { "rules": [ { "operator": "SEMVER_GTE", "negate": false, "version": [1, 20, 4], "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": 1 }, "expected": { "active": false, "value": null } }, { "name": "SEMVER_GTE - true", "flag": { "conditions": [ { "rules": [ { "operator": "SEMVER_GTE", "negate": false, "version": [1, 20, 4], "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": true }, "expected": { "active": false, "value": null } }, { "name": "SEMVER_GTE - false", "flag": { "conditions": [ { "rules": [ { "operator": "SEMVER_GTE", "negate": false, "version": [1, 20, 4], "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": false }, "expected": { "active": false, "value": null } }, { "name": "SEMVER_GTE - object", "flag": { "conditions": [ { "rules": [ { "operator": "SEMVER_GTE", "negate": false, "version": [1, 20, 4], "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": {} }, "expected": { "active": false, "value": null } }, { "name": "SEMVER_GTE - array", "flag": { "conditions": [ { "rules": [ { "operator": "SEMVER_GTE", "negate": false, "version": [1, 20, 4], "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": [] }, "expected": { "active": false, "value": null } }, { "name": "SEMVER_GTE negate - same", "flag": { "conditions": [ { "rules": [ { "operator": "SEMVER_GTE", "negate": true, "version": [1, 20, 4], "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "1.20.4" }, "expected": { "active": false, "value": null } }, { "name": "SEMVER_GTE negate - same with extra subversion", "flag": { "conditions": [ { "rules": [ { "operator": "SEMVER_GTE", "negate": true, "version": [1, 20, 4], "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "1.20.4.9" }, "expected": { "active": false, "value": null } }, { "name": "SEMVER_GTE negate - higher patch version", "flag": { "conditions": [ { "rules": [ { "operator": "SEMVER_GTE", "negate": true, "version": [1, 20, 4], "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "1.20.5" }, "expected": { "active": false, "value": null } }, { "name": "SEMVER_GTE negate - higher minor version, lower patch version", "flag": { "conditions": [ { "rules": [ { "operator": "SEMVER_GTE", "negate": true, "version": [1, 20, 4], "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "1.21.3" }, "expected": { "active": false, "value": null } }, { "name": "SEMVER_GTE negate - higher minor version, but smaller alphabetically", "flag": { "conditions": [ { "rules": [ { "operator": "SEMVER_GTE", "negate": true, "version": [1, 20, 4], "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "1.100.6" }, "expected": { "active": false, "value": null } }, { "name": "SEMVER_GTE negate - leading zero", "flag": { "conditions": [ { "rules": [ { "operator": "SEMVER_GTE", "negate": true, "version": [1, 20, 4], "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "1.0100.6" }, "expected": { "active": false, "value": null } }, { "name": "SEMVER_GTE negate - higher major, but lower minor and patch version", "flag": { "conditions": [ { "rules": [ { "operator": "SEMVER_GTE", "negate": true, "version": [1, 20, 4], "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "2.0.0" }, "expected": { "active": false, "value": null } }, { "name": "SEMVER_GTE negate - higher minor, missing patch version", "flag": { "conditions": [ { "rules": [ { "operator": "SEMVER_GTE", "negate": true, "version": [1, 20, 4], "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "1.21" }, "expected": { "active": false, "value": null } }, { "name": "SEMVER_GTE negate - higher major, missing minor", "flag": { "conditions": [ { "rules": [ { "operator": "SEMVER_GTE", "negate": true, "version": [1, 20, 4], "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "2" }, "expected": { "active": false, "value": null } }, { "name": "SEMVER_GTE negate - lower minor, but higher alphabetically", "flag": { "conditions": [ { "rules": [ { "operator": "SEMVER_GTE", "negate": true, "version": [1, 20, 4], "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "1.3.6" }, "expected": { "active": true, "value": true } }, { "name": "SEMVER_GTE negate - smaller patch version", "flag": { "conditions": [ { "rules": [ { "operator": "SEMVER_GTE", "negate": true, "version": [1, 20, 4], "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "1.20.3" }, "expected": { "active": true, "value": true } }, { "name": "SEMVER_GTE negate - same but missing patch version", "flag": { "conditions": [ { "rules": [ { "operator": "SEMVER_GTE", "negate": true, "version": [1, 20, 4], "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "1.20" }, "expected": { "active": true, "value": true } }, { "name": "SEMVER_GTE negate - same but missing minor version", "flag": { "conditions": [ { "rules": [ { "operator": "SEMVER_GTE", "negate": true, "version": [1, 20, 4], "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "1" }, "expected": { "active": true, "value": true } }, { "name": "SEMVER_GTE negate - undefined", "flag": { "conditions": [ { "rules": [ { "operator": "SEMVER_GTE", "negate": true, "version": [1, 20, 4], "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": {}, "expected": { "active": false, "value": null } }, { "name": "SEMVER_GTE negate - null", "flag": { "conditions": [ { "rules": [ { "operator": "SEMVER_GTE", "negate": true, "version": [1, 20, 4], "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": null }, "expected": { "active": false, "value": null } }, { "name": "SEMVER_GTE negate - zero", "flag": { "conditions": [ { "rules": [ { "operator": "SEMVER_GTE", "negate": true, "version": [1, 20, 4], "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": 0 }, "expected": { "active": false, "value": null } }, { "name": "SEMVER_GTE negate - one", "flag": { "conditions": [ { "rules": [ { "operator": "SEMVER_GTE", "negate": true, "version": [1, 20, 4], "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": 1 }, "expected": { "active": false, "value": null } }, { "name": "SEMVER_GTE negate - true", "flag": { "conditions": [ { "rules": [ { "operator": "SEMVER_GTE", "negate": true, "version": [1, 20, 4], "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": true }, "expected": { "active": false, "value": null } }, { "name": "SEMVER_GTE negate - false", "flag": { "conditions": [ { "rules": [ { "operator": "SEMVER_GTE", "negate": true, "version": [1, 20, 4], "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": false }, "expected": { "active": false, "value": null } }, { "name": "SEMVER_GTE negate - object", "flag": { "conditions": [ { "rules": [ { "operator": "SEMVER_GTE", "negate": true, "version": [1, 20, 4], "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": {} }, "expected": { "active": false, "value": null } }, { "name": "SEMVER_GTE negate - array", "flag": { "conditions": [ { "rules": [ { "operator": "SEMVER_GTE", "negate": true, "version": [1, 20, 4], "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": [] }, "expected": { "active": false, "value": null } }, { "name": "SEMVER_LTE - same", "flag": { "conditions": [ { "rules": [ { "operator": "SEMVER_LTE", "negate": false, "version": [1, 21, 4], "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "1.21.4" }, "expected": { "active": true, "value": true } }, { "name": "SEMVER_LTE - same with extra subversion", "flag": { "conditions": [ { "rules": [ { "operator": "SEMVER_LTE", "negate": false, "version": [1, 21, 4], "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "1.21.4.9" }, "expected": { "active": true, "value": true } }, { "name": "SEMVER_LTE - lower patch version", "flag": { "conditions": [ { "rules": [ { "operator": "SEMVER_LTE", "negate": false, "version": [1, 21, 4], "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "1.21.3" }, "expected": { "active": true, "value": true } }, { "name": "SEMVER_LTE - lower minor version, higher patch version", "flag": { "conditions": [ { "rules": [ { "operator": "SEMVER_LTE", "negate": false, "version": [1, 21, 4], "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "1.20.5" }, "expected": { "active": true, "value": true } }, { "name": "SEMVER_LTE - lower minor version, but higher alphabetically", "flag": { "conditions": [ { "rules": [ { "operator": "SEMVER_LTE", "negate": false, "version": [1, 21, 4], "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "1.3.6" }, "expected": { "active": true, "value": true } }, { "name": "SEMVER_LTE - leading zero", "flag": { "conditions": [ { "rules": [ { "operator": "SEMVER_LTE", "negate": false, "version": [1, 21, 4], "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "1.03.6" }, "expected": { "active": true, "value": true } }, { "name": "SEMVER_LTE - lower major minor and patch version", "flag": { "conditions": [ { "rules": [ { "operator": "SEMVER_LTE", "negate": false, "version": [1, 21, 4], "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "0.0.1" }, "expected": { "active": true, "value": true } }, { "name": "SEMVER_LTE - lower minor, missing patch version", "flag": { "conditions": [ { "rules": [ { "operator": "SEMVER_LTE", "negate": false, "version": [1, 21, 4], "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "1.20" }, "expected": { "active": true, "value": true } }, { "name": "SEMVER_LTE - lower major, missing minor", "flag": { "conditions": [ { "rules": [ { "operator": "SEMVER_LTE", "negate": false, "version": [1, 21, 4], "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "0" }, "expected": { "active": true, "value": true } }, { "name": "SEMVER_LTE - higher minor, but lower alphabetically", "flag": { "conditions": [ { "rules": [ { "operator": "SEMVER_LTE", "negate": false, "version": [1, 21, 4], "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "1.100.6" }, "expected": { "active": false, "value": null } }, { "name": "SEMVER_LTE - higher patch version", "flag": { "conditions": [ { "rules": [ { "operator": "SEMVER_LTE", "negate": false, "version": [1, 21, 4], "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "1.21.5" }, "expected": { "active": false, "value": null } }, { "name": "SEMVER_LTE - same but missing patch version", "flag": { "conditions": [ { "rules": [ { "operator": "SEMVER_LTE", "negate": false, "version": [1, 21, 4], "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "1.21" }, "expected": { "active": false, "value": null } }, { "name": "SEMVER_LTE - same but missing minor version", "flag": { "conditions": [ { "rules": [ { "operator": "SEMVER_LTE", "negate": false, "version": [1, 21, 4], "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "1" }, "expected": { "active": false, "value": null } }, { "name": "SEMVER_LTE - undefined", "flag": { "conditions": [ { "rules": [ { "operator": "SEMVER_LTE", "negate": false, "version": [1, 21, 4], "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": {}, "expected": { "active": false, "value": null } }, { "name": "SEMVER_LTE - null", "flag": { "conditions": [ { "rules": [ { "operator": "SEMVER_LTE", "negate": false, "version": [1, 21, 4], "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": null }, "expected": { "active": false, "value": null } }, { "name": "SEMVER_LTE - zero", "flag": { "conditions": [ { "rules": [ { "operator": "SEMVER_LTE", "negate": false, "version": [1, 21, 4], "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": 0 }, "expected": { "active": false, "value": null } }, { "name": "SEMVER_LTE - one", "flag": { "conditions": [ { "rules": [ { "operator": "SEMVER_LTE", "negate": false, "version": [1, 21, 4], "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": 1 }, "expected": { "active": false, "value": null } }, { "name": "SEMVER_LTE - true", "flag": { "conditions": [ { "rules": [ { "operator": "SEMVER_LTE", "negate": false, "version": [1, 21, 4], "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": true }, "expected": { "active": false, "value": null } }, { "name": "SEMVER_LTE - false", "flag": { "conditions": [ { "rules": [ { "operator": "SEMVER_LTE", "negate": false, "version": [1, 21, 4], "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": false }, "expected": { "active": false, "value": null } }, { "name": "SEMVER_LTE - object", "flag": { "conditions": [ { "rules": [ { "operator": "SEMVER_LTE", "negate": false, "version": [1, 21, 4], "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": {} }, "expected": { "active": false, "value": null } }, { "name": "SEMVER_LTE - array", "flag": { "conditions": [ { "rules": [ { "operator": "SEMVER_LTE", "negate": false, "version": [1, 21, 4], "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": [] }, "expected": { "active": false, "value": null } }, { "name": "SEMVER_LTE negate - same", "flag": { "conditions": [ { "rules": [ { "operator": "SEMVER_LTE", "negate": true, "version": [1, 21, 4], "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "1.21.4" }, "expected": { "active": false, "value": null } }, { "name": "SEMVER_LTE negate - same with extra subversion", "flag": { "conditions": [ { "rules": [ { "operator": "SEMVER_LTE", "negate": true, "version": [1, 21, 4], "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "1.21.4.9" }, "expected": { "active": false, "value": null } }, { "name": "SEMVER_LTE negate - lower patch version", "flag": { "conditions": [ { "rules": [ { "operator": "SEMVER_LTE", "negate": true, "version": [1, 21, 4], "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "1.21.3" }, "expected": { "active": false, "value": null } }, { "name": "SEMVER_LTE negate - lower minor version, higher patch version", "flag": { "conditions": [ { "rules": [ { "operator": "SEMVER_LTE", "negate": true, "version": [1, 21, 4], "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "1.20.5" }, "expected": { "active": false, "value": null } }, { "name": "SEMVER_LTE negate - lower minor version, but higher alphabetically", "flag": { "conditions": [ { "rules": [ { "operator": "SEMVER_LTE", "negate": true, "version": [1, 21, 4], "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "1.3.6" }, "expected": { "active": false, "value": null } }, { "name": "SEMVER_LTE negate - leading zero", "flag": { "conditions": [ { "rules": [ { "operator": "SEMVER_LTE", "negate": true, "version": [1, 21, 4], "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "1.03.6" }, "expected": { "active": false, "value": null } }, { "name": "SEMVER_LTE negate - lower major minor and patch version", "flag": { "conditions": [ { "rules": [ { "operator": "SEMVER_LTE", "negate": true, "version": [1, 21, 4], "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "0.0.1" }, "expected": { "active": false, "value": null } }, { "name": "SEMVER_LTE negate - lower minor, missing patch version", "flag": { "conditions": [ { "rules": [ { "operator": "SEMVER_LTE", "negate": true, "version": [1, 21, 4], "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "1.20" }, "expected": { "active": false, "value": null } }, { "name": "SEMVER_LTE negate - lower major, missing minor", "flag": { "conditions": [ { "rules": [ { "operator": "SEMVER_LTE", "negate": true, "version": [1, 21, 4], "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "0" }, "expected": { "active": false, "value": null } }, { "name": "SEMVER_LTE negate - higher minor, but lower alphabetically", "flag": { "conditions": [ { "rules": [ { "operator": "SEMVER_LTE", "negate": true, "version": [1, 21, 4], "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "1.100.6" }, "expected": { "active": true, "value": true } }, { "name": "SEMVER_LTE negate - higher patch version", "flag": { "conditions": [ { "rules": [ { "operator": "SEMVER_LTE", "negate": true, "version": [1, 21, 4], "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "1.21.5" }, "expected": { "active": true, "value": true } }, { "name": "SEMVER_LTE negate - same but missing patch version", "flag": { "conditions": [ { "rules": [ { "operator": "SEMVER_LTE", "negate": true, "version": [1, 21, 4], "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "1.21" }, "expected": { "active": true, "value": true } }, { "name": "SEMVER_LTE negate - same but missing minor version", "flag": { "conditions": [ { "rules": [ { "operator": "SEMVER_LTE", "negate": true, "version": [1, 21, 4], "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "1" }, "expected": { "active": true, "value": true } }, { "name": "SEMVER_LTE negate - undefined", "flag": { "conditions": [ { "rules": [ { "operator": "SEMVER_LTE", "negate": true, "version": [1, 21, 4], "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": {}, "expected": { "active": false, "value": null } }, { "name": "SEMVER_LTE negate - null", "flag": { "conditions": [ { "rules": [ { "operator": "SEMVER_LTE", "negate": true, "version": [1, 21, 4], "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": null }, "expected": { "active": false, "value": null } }, { "name": "SEMVER_LTE negate - zero", "flag": { "conditions": [ { "rules": [ { "operator": "SEMVER_LTE", "negate": true, "version": [1, 21, 4], "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": 0 }, "expected": { "active": false, "value": null } }, { "name": "SEMVER_LTE negate - one", "flag": { "conditions": [ { "rules": [ { "operator": "SEMVER_LTE", "negate": true, "version": [1, 21, 4], "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": 1 }, "expected": { "active": false, "value": null } }, { "name": "SEMVER_LTE negate - true", "flag": { "conditions": [ { "rules": [ { "operator": "SEMVER_LTE", "negate": true, "version": [1, 21, 4], "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": true }, "expected": { "active": false, "value": null } }, { "name": "SEMVER_LTE negate - false", "flag": { "conditions": [ { "rules": [ { "operator": "SEMVER_LTE", "negate": true, "version": [1, 21, 4], "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": false }, "expected": { "active": false, "value": null } }, { "name": "SEMVER_LTE negate - object", "flag": { "conditions": [ { "rules": [ { "operator": "SEMVER_LTE", "negate": true, "version": [1, 21, 4], "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": {} }, "expected": { "active": false, "value": null } }, { "name": "SEMVER_LTE negate - array", "flag": { "conditions": [ { "rules": [ { "operator": "SEMVER_LTE", "negate": true, "version": [1, 21, 4], "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": [] }, "expected": { "active": false, "value": null } }, { "name": "PERCENTAGE - rhythm", "flag": { "conditions": [ { "rules": [ { "operator": "PERCENTAGE", "seed": 42, "rangeStart": 0.1, "rangeEnd": 0.7, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "rhythm" }, "expected": { "active": true, "value": true } }, { "name": "PERCENTAGE - live", "flag": { "conditions": [ { "rules": [ { "operator": "PERCENTAGE", "seed": 42, "rangeStart": 0.1, "rangeEnd": 0.7, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "live" }, "expected": { "active": false, "value": null } }, { "name": "PERCENTAGE - peep", "flag": { "conditions": [ { "rules": [ { "operator": "PERCENTAGE", "seed": 42, "rangeStart": 0.1, "rangeEnd": 0.7, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "peep" }, "expected": { "active": false, "value": null } }, { "name": "PERCENTAGE - confuse", "flag": { "conditions": [ { "rules": [ { "operator": "PERCENTAGE", "seed": 42, "rangeStart": 0.1, "rangeEnd": 0.7, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "confuse" }, "expected": { "active": false, "value": null } }, { "name": "PERCENTAGE - abiding", "flag": { "conditions": [ { "rules": [ { "operator": "PERCENTAGE", "seed": 42, "rangeStart": 0.1, "rangeEnd": 0.7, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "abiding" }, "expected": { "active": true, "value": true } }, { "name": "PERCENTAGE - press", "flag": { "conditions": [ { "rules": [ { "operator": "PERCENTAGE", "seed": 42, "rangeStart": 0.1, "rangeEnd": 0.7, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "press" }, "expected": { "active": true, "value": true } }, { "name": "PERCENTAGE - billowy", "flag": { "conditions": [ { "rules": [ { "operator": "PERCENTAGE", "seed": 42, "rangeStart": 0.1, "rangeEnd": 0.7, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "billowy" }, "expected": { "active": false, "value": null } }, { "name": "PERCENTAGE - standing", "flag": { "conditions": [ { "rules": [ { "operator": "PERCENTAGE", "seed": 42, "rangeStart": 0.1, "rangeEnd": 0.7, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "standing" }, "expected": { "active": false, "value": null } }, { "name": "PERCENTAGE - combative", "flag": { "conditions": [ { "rules": [ { "operator": "PERCENTAGE", "seed": 42, "rangeStart": 0.1, "rangeEnd": 0.7, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "combative" }, "expected": { "active": true, "value": true } }, { "name": "PERCENTAGE - earsplitting", "flag": { "conditions": [ { "rules": [ { "operator": "PERCENTAGE", "seed": 42, "rangeStart": 0.1, "rangeEnd": 0.7, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "earsplitting" }, "expected": { "active": true, "value": true } }, { "name": "PERCENTAGE - cautious", "flag": { "conditions": [ { "rules": [ { "operator": "PERCENTAGE", "seed": 42, "rangeStart": 0.1, "rangeEnd": 0.7, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "cautious" }, "expected": { "active": true, "value": true } }, { "name": "PERCENTAGE - square", "flag": { "conditions": [ { "rules": [ { "operator": "PERCENTAGE", "seed": 42, "rangeStart": 0.1, "rangeEnd": 0.7, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "square" }, "expected": { "active": false, "value": null } }, { "name": "PERCENTAGE - judicious", "flag": { "conditions": [ { "rules": [ { "operator": "PERCENTAGE", "seed": 42, "rangeStart": 0.1, "rangeEnd": 0.7, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "judicious" }, "expected": { "active": true, "value": true } }, { "name": "PERCENTAGE - limping", "flag": { "conditions": [ { "rules": [ { "operator": "PERCENTAGE", "seed": 42, "rangeStart": 0.1, "rangeEnd": 0.7, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "limping" }, "expected": { "active": true, "value": true } }, { "name": "PERCENTAGE - rice", "flag": { "conditions": [ { "rules": [ { "operator": "PERCENTAGE", "seed": 42, "rangeStart": 0.1, "rangeEnd": 0.7, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "rice" }, "expected": { "active": true, "value": true } }, { "name": "PERCENTAGE - taste", "flag": { "conditions": [ { "rules": [ { "operator": "PERCENTAGE", "seed": 42, "rangeStart": 0.1, "rangeEnd": 0.7, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "taste" }, "expected": { "active": false, "value": null } }, { "name": "PERCENTAGE - bomb", "flag": { "conditions": [ { "rules": [ { "operator": "PERCENTAGE", "seed": 42, "rangeStart": 0.1, "rangeEnd": 0.7, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "bomb" }, "expected": { "active": false, "value": null } }, { "name": "PERCENTAGE - twig", "flag": { "conditions": [ { "rules": [ { "operator": "PERCENTAGE", "seed": 42, "rangeStart": 0.1, "rangeEnd": 0.7, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "twig" }, "expected": { "active": true, "value": true } }, { "name": "PERCENTAGE - clumsy", "flag": { "conditions": [ { "rules": [ { "operator": "PERCENTAGE", "seed": 42, "rangeStart": 0.1, "rangeEnd": 0.7, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "clumsy" }, "expected": { "active": false, "value": null } }, { "name": "PERCENTAGE - toothpaste", "flag": { "conditions": [ { "rules": [ { "operator": "PERCENTAGE", "seed": 42, "rangeStart": 0.1, "rangeEnd": 0.7, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "toothpaste" }, "expected": { "active": true, "value": true } }, { "name": "PERCENTAGE - 1", "flag": { "conditions": [ { "rules": [ { "operator": "PERCENTAGE", "seed": 42, "rangeStart": 0.1, "rangeEnd": 0.7, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": 1 }, "expected": { "active": true, "value": true } }, { "name": "PERCENTAGE - 2", "flag": { "conditions": [ { "rules": [ { "operator": "PERCENTAGE", "seed": 42, "rangeStart": 0.1, "rangeEnd": 0.7, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": 2 }, "expected": { "active": false, "value": null } }, { "name": "PERCENTAGE - 3", "flag": { "conditions": [ { "rules": [ { "operator": "PERCENTAGE", "seed": 42, "rangeStart": 0.1, "rangeEnd": 0.7, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": 3 }, "expected": { "active": true, "value": true } }, { "name": "PERCENTAGE - 4", "flag": { "conditions": [ { "rules": [ { "operator": "PERCENTAGE", "seed": 42, "rangeStart": 0.1, "rangeEnd": 0.7, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": 4 }, "expected": { "active": true, "value": true } }, { "name": "PERCENTAGE - 5", "flag": { "conditions": [ { "rules": [ { "operator": "PERCENTAGE", "seed": 42, "rangeStart": 0.1, "rangeEnd": 0.7, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": 5 }, "expected": { "active": true, "value": true } }, { "name": "PERCENTAGE - 6", "flag": { "conditions": [ { "rules": [ { "operator": "PERCENTAGE", "seed": 42, "rangeStart": 0.1, "rangeEnd": 0.7, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": 6 }, "expected": { "active": false, "value": null } }, { "name": "PERCENTAGE - 7", "flag": { "conditions": [ { "rules": [ { "operator": "PERCENTAGE", "seed": 42, "rangeStart": 0.1, "rangeEnd": 0.7, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": 7 }, "expected": { "active": false, "value": null } }, { "name": "PERCENTAGE - 8", "flag": { "conditions": [ { "rules": [ { "operator": "PERCENTAGE", "seed": 42, "rangeStart": 0.1, "rangeEnd": 0.7, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": 8 }, "expected": { "active": true, "value": true } }, { "name": "PERCENTAGE - 9", "flag": { "conditions": [ { "rules": [ { "operator": "PERCENTAGE", "seed": 42, "rangeStart": 0.1, "rangeEnd": 0.7, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": 9 }, "expected": { "active": true, "value": true } }, { "name": "PERCENTAGE - 10", "flag": { "conditions": [ { "rules": [ { "operator": "PERCENTAGE", "seed": 42, "rangeStart": 0.1, "rangeEnd": 0.7, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": 10 }, "expected": { "active": true, "value": true } }, { "name": "PERCENTAGE - 11", "flag": { "conditions": [ { "rules": [ { "operator": "PERCENTAGE", "seed": 42, "rangeStart": 0.1, "rangeEnd": 0.7, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": 11 }, "expected": { "active": true, "value": true } }, { "name": "PERCENTAGE - 12", "flag": { "conditions": [ { "rules": [ { "operator": "PERCENTAGE", "seed": 42, "rangeStart": 0.1, "rangeEnd": 0.7, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": 12 }, "expected": { "active": true, "value": true } }, { "name": "PERCENTAGE - 13", "flag": { "conditions": [ { "rules": [ { "operator": "PERCENTAGE", "seed": 42, "rangeStart": 0.1, "rangeEnd": 0.7, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": 13 }, "expected": { "active": false, "value": null } }, { "name": "PERCENTAGE - 14", "flag": { "conditions": [ { "rules": [ { "operator": "PERCENTAGE", "seed": 42, "rangeStart": 0.1, "rangeEnd": 0.7, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": 14 }, "expected": { "active": true, "value": true } }, { "name": "PERCENTAGE - 15", "flag": { "conditions": [ { "rules": [ { "operator": "PERCENTAGE", "seed": 42, "rangeStart": 0.1, "rangeEnd": 0.7, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": 15 }, "expected": { "active": true, "value": true } }, { "name": "PERCENTAGE - 16", "flag": { "conditions": [ { "rules": [ { "operator": "PERCENTAGE", "seed": 42, "rangeStart": 0.1, "rangeEnd": 0.7, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": 16 }, "expected": { "active": false, "value": null } }, { "name": "PERCENTAGE - 17", "flag": { "conditions": [ { "rules": [ { "operator": "PERCENTAGE", "seed": 42, "rangeStart": 0.1, "rangeEnd": 0.7, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": 17 }, "expected": { "active": true, "value": true } }, { "name": "PERCENTAGE - 18", "flag": { "conditions": [ { "rules": [ { "operator": "PERCENTAGE", "seed": 42, "rangeStart": 0.1, "rangeEnd": 0.7, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": 18 }, "expected": { "active": true, "value": true } }, { "name": "PERCENTAGE - 19", "flag": { "conditions": [ { "rules": [ { "operator": "PERCENTAGE", "seed": 42, "rangeStart": 0.1, "rangeEnd": 0.7, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": 19 }, "expected": { "active": false, "value": null } }, { "name": "PERCENTAGE - 20", "flag": { "conditions": [ { "rules": [ { "operator": "PERCENTAGE", "seed": 42, "rangeStart": 0.1, "rangeEnd": 0.7, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": 20 }, "expected": { "active": false, "value": null } }, { "name": "PERCENTAGE - undefined", "flag": { "conditions": [ { "rules": [ { "operator": "PERCENTAGE", "seed": 42, "rangeStart": 0.1, "rangeEnd": 0.7, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": {}, "expected": { "active": false, "value": null } }, { "name": "PERCENTAGE - null", "flag": { "conditions": [ { "rules": [ { "operator": "PERCENTAGE", "seed": 42, "rangeStart": 0.1, "rangeEnd": 0.7, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": null }, "expected": { "active": false, "value": null } }, { "name": "PERCENTAGE - true", "flag": { "conditions": [ { "rules": [ { "operator": "PERCENTAGE", "seed": 42, "rangeStart": 0.1, "rangeEnd": 0.7, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": true }, "expected": { "active": false, "value": null } }, { "name": "PERCENTAGE - false", "flag": { "conditions": [ { "rules": [ { "operator": "PERCENTAGE", "seed": 42, "rangeStart": 0.1, "rangeEnd": 0.7, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": false }, "expected": { "active": false, "value": null } }, { "name": "PERCENTAGE - object", "flag": { "conditions": [ { "rules": [ { "operator": "PERCENTAGE", "seed": 42, "rangeStart": 0.1, "rangeEnd": 0.7, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": {} }, "expected": { "active": false, "value": null } }, { "name": "PERCENTAGE - array", "flag": { "conditions": [ { "rules": [ { "operator": "PERCENTAGE", "seed": 42, "rangeStart": 0.1, "rangeEnd": 0.7, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": [] }, "expected": { "active": false, "value": null } }, { "name": "PERCENTAGE negate - rhythm", "flag": { "conditions": [ { "rules": [ { "operator": "PERCENTAGE", "seed": 42, "rangeStart": 0.1, "rangeEnd": 0.7, "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "rhythm" }, "expected": { "active": false, "value": null } }, { "name": "PERCENTAGE negate - live", "flag": { "conditions": [ { "rules": [ { "operator": "PERCENTAGE", "seed": 42, "rangeStart": 0.1, "rangeEnd": 0.7, "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "live" }, "expected": { "active": true, "value": true } }, { "name": "PERCENTAGE negate - peep", "flag": { "conditions": [ { "rules": [ { "operator": "PERCENTAGE", "seed": 42, "rangeStart": 0.1, "rangeEnd": 0.7, "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "peep" }, "expected": { "active": true, "value": true } }, { "name": "PERCENTAGE negate - confuse", "flag": { "conditions": [ { "rules": [ { "operator": "PERCENTAGE", "seed": 42, "rangeStart": 0.1, "rangeEnd": 0.7, "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "confuse" }, "expected": { "active": true, "value": true } }, { "name": "PERCENTAGE negate - abiding", "flag": { "conditions": [ { "rules": [ { "operator": "PERCENTAGE", "seed": 42, "rangeStart": 0.1, "rangeEnd": 0.7, "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "abiding" }, "expected": { "active": false, "value": null } }, { "name": "PERCENTAGE negate - press", "flag": { "conditions": [ { "rules": [ { "operator": "PERCENTAGE", "seed": 42, "rangeStart": 0.1, "rangeEnd": 0.7, "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "press" }, "expected": { "active": false, "value": null } }, { "name": "PERCENTAGE negate - billowy", "flag": { "conditions": [ { "rules": [ { "operator": "PERCENTAGE", "seed": 42, "rangeStart": 0.1, "rangeEnd": 0.7, "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "billowy" }, "expected": { "active": true, "value": true } }, { "name": "PERCENTAGE negate - standing", "flag": { "conditions": [ { "rules": [ { "operator": "PERCENTAGE", "seed": 42, "rangeStart": 0.1, "rangeEnd": 0.7, "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "standing" }, "expected": { "active": true, "value": true } }, { "name": "PERCENTAGE negate - combative", "flag": { "conditions": [ { "rules": [ { "operator": "PERCENTAGE", "seed": 42, "rangeStart": 0.1, "rangeEnd": 0.7, "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "combative" }, "expected": { "active": false, "value": null } }, { "name": "PERCENTAGE negate - earsplitting", "flag": { "conditions": [ { "rules": [ { "operator": "PERCENTAGE", "seed": 42, "rangeStart": 0.1, "rangeEnd": 0.7, "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "earsplitting" }, "expected": { "active": false, "value": null } }, { "name": "PERCENTAGE negate - cautious", "flag": { "conditions": [ { "rules": [ { "operator": "PERCENTAGE", "seed": 42, "rangeStart": 0.1, "rangeEnd": 0.7, "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "cautious" }, "expected": { "active": false, "value": null } }, { "name": "PERCENTAGE negate - square", "flag": { "conditions": [ { "rules": [ { "operator": "PERCENTAGE", "seed": 42, "rangeStart": 0.1, "rangeEnd": 0.7, "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "square" }, "expected": { "active": true, "value": true } }, { "name": "PERCENTAGE negate - judicious", "flag": { "conditions": [ { "rules": [ { "operator": "PERCENTAGE", "seed": 42, "rangeStart": 0.1, "rangeEnd": 0.7, "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "judicious" }, "expected": { "active": false, "value": null } }, { "name": "PERCENTAGE negate - limping", "flag": { "conditions": [ { "rules": [ { "operator": "PERCENTAGE", "seed": 42, "rangeStart": 0.1, "rangeEnd": 0.7, "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "limping" }, "expected": { "active": false, "value": null } }, { "name": "PERCENTAGE negate - rice", "flag": { "conditions": [ { "rules": [ { "operator": "PERCENTAGE", "seed": 42, "rangeStart": 0.1, "rangeEnd": 0.7, "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "rice" }, "expected": { "active": false, "value": null } }, { "name": "PERCENTAGE negate - taste", "flag": { "conditions": [ { "rules": [ { "operator": "PERCENTAGE", "seed": 42, "rangeStart": 0.1, "rangeEnd": 0.7, "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "taste" }, "expected": { "active": true, "value": true } }, { "name": "PERCENTAGE negate - bomb", "flag": { "conditions": [ { "rules": [ { "operator": "PERCENTAGE", "seed": 42, "rangeStart": 0.1, "rangeEnd": 0.7, "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "bomb" }, "expected": { "active": true, "value": true } }, { "name": "PERCENTAGE negate - twig", "flag": { "conditions": [ { "rules": [ { "operator": "PERCENTAGE", "seed": 42, "rangeStart": 0.1, "rangeEnd": 0.7, "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "twig" }, "expected": { "active": false, "value": null } }, { "name": "PERCENTAGE negate - clumsy", "flag": { "conditions": [ { "rules": [ { "operator": "PERCENTAGE", "seed": 42, "rangeStart": 0.1, "rangeEnd": 0.7, "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "clumsy" }, "expected": { "active": true, "value": true } }, { "name": "PERCENTAGE negate - toothpaste", "flag": { "conditions": [ { "rules": [ { "operator": "PERCENTAGE", "seed": 42, "rangeStart": 0.1, "rangeEnd": 0.7, "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": "toothpaste" }, "expected": { "active": false, "value": null } }, { "name": "PERCENTAGE negate - 1", "flag": { "conditions": [ { "rules": [ { "operator": "PERCENTAGE", "seed": 42, "rangeStart": 0.1, "rangeEnd": 0.7, "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": 1 }, "expected": { "active": false, "value": null } }, { "name": "PERCENTAGE negate - 2", "flag": { "conditions": [ { "rules": [ { "operator": "PERCENTAGE", "seed": 42, "rangeStart": 0.1, "rangeEnd": 0.7, "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": 2 }, "expected": { "active": true, "value": true } }, { "name": "PERCENTAGE negate - 3", "flag": { "conditions": [ { "rules": [ { "operator": "PERCENTAGE", "seed": 42, "rangeStart": 0.1, "rangeEnd": 0.7, "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": 3 }, "expected": { "active": false, "value": null } }, { "name": "PERCENTAGE negate - 4", "flag": { "conditions": [ { "rules": [ { "operator": "PERCENTAGE", "seed": 42, "rangeStart": 0.1, "rangeEnd": 0.7, "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": 4 }, "expected": { "active": false, "value": null } }, { "name": "PERCENTAGE negate - 5", "flag": { "conditions": [ { "rules": [ { "operator": "PERCENTAGE", "seed": 42, "rangeStart": 0.1, "rangeEnd": 0.7, "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": 5 }, "expected": { "active": false, "value": null } }, { "name": "PERCENTAGE negate - 6", "flag": { "conditions": [ { "rules": [ { "operator": "PERCENTAGE", "seed": 42, "rangeStart": 0.1, "rangeEnd": 0.7, "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": 6 }, "expected": { "active": true, "value": true } }, { "name": "PERCENTAGE negate - 7", "flag": { "conditions": [ { "rules": [ { "operator": "PERCENTAGE", "seed": 42, "rangeStart": 0.1, "rangeEnd": 0.7, "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": 7 }, "expected": { "active": true, "value": true } }, { "name": "PERCENTAGE negate - 8", "flag": { "conditions": [ { "rules": [ { "operator": "PERCENTAGE", "seed": 42, "rangeStart": 0.1, "rangeEnd": 0.7, "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": 8 }, "expected": { "active": false, "value": null } }, { "name": "PERCENTAGE negate - 9", "flag": { "conditions": [ { "rules": [ { "operator": "PERCENTAGE", "seed": 42, "rangeStart": 0.1, "rangeEnd": 0.7, "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": 9 }, "expected": { "active": false, "value": null } }, { "name": "PERCENTAGE negate - 10", "flag": { "conditions": [ { "rules": [ { "operator": "PERCENTAGE", "seed": 42, "rangeStart": 0.1, "rangeEnd": 0.7, "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": 10 }, "expected": { "active": false, "value": null } }, { "name": "PERCENTAGE negate - 11", "flag": { "conditions": [ { "rules": [ { "operator": "PERCENTAGE", "seed": 42, "rangeStart": 0.1, "rangeEnd": 0.7, "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": 11 }, "expected": { "active": false, "value": null } }, { "name": "PERCENTAGE negate - 12", "flag": { "conditions": [ { "rules": [ { "operator": "PERCENTAGE", "seed": 42, "rangeStart": 0.1, "rangeEnd": 0.7, "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": 12 }, "expected": { "active": false, "value": null } }, { "name": "PERCENTAGE negate - 13", "flag": { "conditions": [ { "rules": [ { "operator": "PERCENTAGE", "seed": 42, "rangeStart": 0.1, "rangeEnd": 0.7, "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": 13 }, "expected": { "active": true, "value": true } }, { "name": "PERCENTAGE negate - 14", "flag": { "conditions": [ { "rules": [ { "operator": "PERCENTAGE", "seed": 42, "rangeStart": 0.1, "rangeEnd": 0.7, "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": 14 }, "expected": { "active": false, "value": null } }, { "name": "PERCENTAGE negate - 15", "flag": { "conditions": [ { "rules": [ { "operator": "PERCENTAGE", "seed": 42, "rangeStart": 0.1, "rangeEnd": 0.7, "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": 15 }, "expected": { "active": false, "value": null } }, { "name": "PERCENTAGE negate - 16", "flag": { "conditions": [ { "rules": [ { "operator": "PERCENTAGE", "seed": 42, "rangeStart": 0.1, "rangeEnd": 0.7, "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": 16 }, "expected": { "active": true, "value": true } }, { "name": "PERCENTAGE negate - 17", "flag": { "conditions": [ { "rules": [ { "operator": "PERCENTAGE", "seed": 42, "rangeStart": 0.1, "rangeEnd": 0.7, "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": 17 }, "expected": { "active": false, "value": null } }, { "name": "PERCENTAGE negate - 18", "flag": { "conditions": [ { "rules": [ { "operator": "PERCENTAGE", "seed": 42, "rangeStart": 0.1, "rangeEnd": 0.7, "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": 18 }, "expected": { "active": false, "value": null } }, { "name": "PERCENTAGE negate - 19", "flag": { "conditions": [ { "rules": [ { "operator": "PERCENTAGE", "seed": 42, "rangeStart": 0.1, "rangeEnd": 0.7, "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": 19 }, "expected": { "active": true, "value": true } }, { "name": "PERCENTAGE negate - 20", "flag": { "conditions": [ { "rules": [ { "operator": "PERCENTAGE", "seed": 42, "rangeStart": 0.1, "rangeEnd": 0.7, "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": 20 }, "expected": { "active": true, "value": true } }, { "name": "PERCENTAGE negate - undefined", "flag": { "conditions": [ { "rules": [ { "operator": "PERCENTAGE", "seed": 42, "rangeStart": 0.1, "rangeEnd": 0.7, "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": {}, "expected": { "active": false, "value": null } }, { "name": "PERCENTAGE negate - null", "flag": { "conditions": [ { "rules": [ { "operator": "PERCENTAGE", "seed": 42, "rangeStart": 0.1, "rangeEnd": 0.7, "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": null }, "expected": { "active": false, "value": null } }, { "name": "PERCENTAGE negate - true", "flag": { "conditions": [ { "rules": [ { "operator": "PERCENTAGE", "seed": 42, "rangeStart": 0.1, "rangeEnd": 0.7, "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": true }, "expected": { "active": false, "value": null } }, { "name": "PERCENTAGE negate - false", "flag": { "conditions": [ { "rules": [ { "operator": "PERCENTAGE", "seed": 42, "rangeStart": 0.1, "rangeEnd": 0.7, "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": false }, "expected": { "active": false, "value": null } }, { "name": "PERCENTAGE negate - object", "flag": { "conditions": [ { "rules": [ { "operator": "PERCENTAGE", "seed": 42, "rangeStart": 0.1, "rangeEnd": 0.7, "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": {} }, "expected": { "active": false, "value": null } }, { "name": "PERCENTAGE negate - array", "flag": { "conditions": [ { "rules": [ { "operator": "PERCENTAGE", "seed": 42, "rangeStart": 0.1, "rangeEnd": 0.7, "negate": true, "key": "foo" } ], "variation": { "active": true, "value": true } } ], "defaultVariation": { "active": false, "value": null } }, "context": { "foo": [] }, "expected": { "active": false, "value": null } } ]