예제 #1
0
파일: fetcd.py 프로젝트: yarntime/calico
def parse_tier_data(tier, data):
    data = safe_decode_json(data, log_tag="tier %s" % tier)
    try:
        common.validate_tier_data(tier, data)
    except ValidationFailed as e:
        _log.error("Validation failed for tier data for tier %s: %r", tier, e)
        return None
    else:
        return data
예제 #2
0
def parse_tier_data(tier, data):
    data = safe_decode_json(data, log_tag="tier %s" % tier)
    try:
        common.validate_tier_data(tier, data)
    except ValidationFailed as e:
        _log.error("Validation failed for tier data for tier %s: %r",
                   tier, e)
        return None
    else:
        return data
예제 #3
0
 def test_validate_tier_data(self):
     good_data = {"order": 10}
     common.validate_tier_data("abcd_-ef", good_data)
     with self.assertRaises(ValidationFailed):
         # Bad name
         common.validate_tier_data("", good_data)
     with self.assertRaises(ValidationFailed):
         # Bad name
         common.validate_tier_data("+|$", good_data)
     with self.assertRaises(ValidationFailed):
         # Bad order value
         common.validate_tier_data("abc", {"order": "10"})
     with self.assertRaises(ValidationFailed):
         # Missing order.
         common.validate_tier_data("abc", {})
     with self.assertRaises(ValidationFailed):
         # Non-dict.
         common.validate_tier_data("abc", "foo")
예제 #4
0
 def test_validate_tier_data(self):
     good_data = {"order": 10}
     common.validate_tier_data("abcd_-ef", good_data)
     with self.assertRaises(ValidationFailed):
         # Bad name
         common.validate_tier_data("", good_data)
     with self.assertRaises(ValidationFailed):
         # Bad name
         common.validate_tier_data("+|$", good_data)
     with self.assertRaises(ValidationFailed):
         # Bad order value
         common.validate_tier_data("abc", {"order": "10"})
     with self.assertRaises(ValidationFailed):
         # Missing order.
         common.validate_tier_data("abc", {})
     with self.assertRaises(ValidationFailed):
         # Non-dict.
         common.validate_tier_data("abc", "foo")
예제 #5
0
 def test_validate_tier_data(self):
     good_data = {"order": 10}
     common.validate_tier_data("abcd_-ef", good_data)
     with self.assertRaises(ValidationFailed):
         # Bad name
         common.validate_tier_data("", good_data)
     with self.assertRaises(ValidationFailed):
         # Bad name
         common.validate_tier_data("+|$", good_data)
     with self.assertRaises(ValidationFailed):
         # Bad order value
         common.validate_tier_data("abc", {"order": "10"})
     with self.assertRaises(ValidationFailed):
         # Non-dict.
         common.validate_tier_data("abc", "foo")
     # Missing order.
     tier = {}
     common.validate_tier_data("abc", tier)
     self.assertEqual(tier["order"], common.INFINITY)
     self.assertGreater(tier["order"], 999999999999999999999999999999999999)
     # "default" order.
     tier = {"order": "default"}
     common.validate_tier_data("abc", tier)
     self.assertEqual(tier["order"], common.INFINITY)
     self.assertGreater(tier["order"], 999999999999999999999999999999999999)