Ejemplo n.º 1
0
    def test_condition_gets_included_in_meta(self):
        condition_checks = {self.txt(): True}
        condition = Condition(**condition_checks)

        self.store.create(self.name)
        self.flag.add_condition(condition)

        meta = self.flag.get_meta()

        self.assertTrue(condition.to_dict() in meta["conditions"])
Ejemplo n.º 2
0
    def test_condition_gets_included_in_meta(self):
        feature_name = self.txt()
        condition_checks = {self.txt(): True}
        condition = Condition(**condition_checks)

        self.client.create(feature_name)
        self.client.add_condition(feature_name, condition)

        meta = self.client.get_meta(feature_name)

        self.assertTrue(condition.to_dict() in meta["conditions"])
Ejemplo n.º 3
0
    def test_sets_conditions_correctly(self):
        feature_name = self.txt()

        self.fast.create(feature_name)

        condition = Condition(**{self.txt(): self.txt()})
        meta = FeatureFlagStoreMeta(int(datetime.now().timestamp()),
                                    conditions=[condition])

        self.fast.set_meta(feature_name, meta)

        self.assertEqual(condition.to_dict(),
                         self.fast.get(feature_name).meta["conditions"][0])
    def test_includes_all_checks(self):
        condition = Condition(
            foo=True,
            bar=False,
            baz__gt=99,
            baz__lt=103,
            herp__gte=10,
            herp__lte=20,
            derp__ne=2,
            derp__in=[2, 43, 5, 8],
            derp__not_in=[8, 1000],
        )

        expected = {
            "foo": [{
                "variable": "foo",
                "value": True,
                "operator": None
            }],
            "bar": [{
                "variable": "bar",
                "value": False,
                "operator": None
            }],
            "baz": [
                {
                    "variable": "baz",
                    "value": 99,
                    "operator": "gt"
                },
                {
                    "variable": "baz",
                    "value": 103,
                    "operator": "lt"
                },
            ],
            "herp": [
                {
                    "variable": "herp",
                    "value": 10,
                    "operator": "gte"
                },
                {
                    "variable": "herp",
                    "value": 20,
                    "operator": "lte"
                },
            ],
            "derp": [
                {
                    "variable": "derp",
                    "value": 2,
                    "operator": "ne"
                },
                {
                    "variable": "derp",
                    "value": [2, 43, 5, 8],
                    "operator": "in"
                },
                {
                    "variable": "derp",
                    "value": [8, 1000],
                    "operator": "not_in"
                },
            ],
        }

        self._compare(expected, condition.to_dict())