示例#1
0
 def test_integer_list_003(self):
     """ test case for integer list sample #3 """
     l = [10, "foo", 15, " bar"]
     scheme = [AnyOf(int, str)]
     self.assertTrue(validate(scheme, l))
     l.append(True)
     self.assertFalse(validate(scheme, l))
示例#2
0
 def test_integer_list_001(self):
     """ test case for integer list sample #1 """
     l = [1, 2, 3, 4, 5, 6]
     scheme = [int]
     self.assertTrue(validate(scheme, l))
     l.append("bad_end")
     self.assertFalse(validate(scheme, l))
示例#3
0
 def test_dictionary_001(self):
     """ test case for dictionary #1 """
     d = {"firstName": "John", "lastName": "Smith"}
     scheme = {"firstName": str, "lastName": str}
     self.assertTrue(validate(scheme, d))
     d["foo"] = 10
     self.assertFalse(validate(scheme, d))
示例#4
0
 def test_dictionary_002(self):
     """ test case for dictionary #2 """
     d = {"firstName": "John", "lastName": "Smith"}
     scheme = {Many(re.compile("\w+")): str}
     self.assertTrue(validate(scheme, d))
     d["anotherKey"] = "look ma, still validates"
     self.assertTrue(validate(scheme, d))
     d["badKey"] = 10
     self.assertFalse(validate(scheme, d))
示例#5
0
 def test_bad_001(self):
     scheme = {Many(re.compile("\w+")): [{"id": int, "is_full": bool, "shard_id": int, "url": str}]}
     data = {
         "foo": [
             {"id": 0, "is_full": False, "shard_id": 0, "url": "foo"},
             {"id": 1, "is_full": True, "shard_id": 3, "url": "bar"},
             {"id": 2, "is_full": False, "shard_id": 5, "url": "zar"},
         ],
         "bar": [
             {"id": 3, "is_full": False, "shard_id": 7, "url": "foobar"},
             {"id": 4, "is_full": True, "shard_id": 9, "url": "barfoo"},
             {"id": 5, "is_full": False, "shard_id": 11, "url": 10},
         ],
     }
     self.assertFalse(validate(scheme, data))
示例#6
0
 def test_bad_007(self):
     x = {str: {str: str}}
     self.assertFalse(validate(x, {"foo": {"bar": 10}}))
示例#7
0
 def test_str_001(self):
     x = Text()
     self.assertTrue(validate(x, str("abc")))
示例#8
0
 def test_optional_bad_001(self):
     x = {str: Optional(10)}
     self.assertTrue(validate(x, {"foo": None}))
示例#9
0
 def test_optional_good_001(self):
     x = {str: Optional(10)}
     self.assertTrue(validate(x, {"foo": 10}))
示例#10
0
 def test_good_003(self):
     x = {AnyOf(int, str): str}
     self.assertTrue(validate(x, {10: "foo"}))
     self.assertTrue(validate(x, {"bar": "foo"}))
示例#11
0
 def test_bad_006(self):
     x = {"foo": int, "bar": int}
     self.assertFalse(validate(x, {"bar": 10}))
示例#12
0
 def test_callables_005(self):
     d = {"x": 10}
     scheme = {"x": lambda x: len(x) > 0}
     self.assertFalse(validate(scheme, d))
示例#13
0
 def test_good_002(self):
     x = Optional(str)
     self.assertTrue(validate(x, None))
示例#14
0
 def test_callables_001(self):
     d = {"x": 10}
     scheme = {"x": lambda x: x > 0}
     self.assertTrue(validate(scheme, d))
示例#15
0
 def test_callables_003(self):
     d = {"x": "boom"}
     scheme = {"x": lambda x: x > 0}
     self.assertTrue(validate(scheme, d))  # NOTE what the hell, seriously!
示例#16
0
 def test_optional_bad_004(self):
     x = {"a": "b", "c": "d", Optional("foo"): "bar", Optional("zoo"): "xar"}
     self.assertFalse(validate(x, {"a": "b", "c": "d", "zoo": "bar"}))
示例#17
0
 def test_optional_bad_003(self):
     x = {Optional(str): int}
     self.assertFalse(validate(x, {"a": "b"}))
示例#18
0
 def test_optional_good_003(self):
     x = {Optional("foo"): int, "a": "b"}
     self.assertTrue(validate(x, {"foo": 10, "a": "b"}))
示例#19
0
 def test_optional_bad_002(self):
     x = {Optional(str): int}
     self.assertTrue(validate(x, {}))
示例#20
0
 def test_optional_good_002(self):
     x = {Optional(str): int}
     self.assertTrue(validate(x, {"foo": 10}))
示例#21
0
 def test_callables_002(self):
     d = {"x": -10}
     scheme = {"x": lambda x: x > 0}
     self.assertFalse(validate(scheme, d))
示例#22
0
 def test_unicode_001(self):
     x = Text()
     self.assertTrue(validate(x, unicode("abc")))
示例#23
0
 def test_callables_004(self):
     d = {"x": "foo"}
     scheme = {"x": lambda x: len(x) > 0}
     self.assertTrue(validate(scheme, d))
示例#24
0
 def test_int_001(self):
     x = Text()
     self.assertFalse(validate(x, 10))
示例#25
0
 def test_good_001(self):
     x = Optional(str)
     self.assertTrue(validate(x, "foo"))
示例#26
0
 def test_good_002(self):
     scheme = {Optional("select"): [str], Optional("limit"): int, Optional("offset"): int}
     data = {}
     self.assertTrue(validate(scheme, data))
示例#27
0
 def test_bad_001(self):
     x = Optional(str)
     self.assertFalse(validate(x, 10))
示例#28
0
 def test_bad_002(self):
     scheme = {Optional("select"): [str], Optional("limit"): int, Optional("offset"): int}
     data = {"foo": "bar"}
     self.assertFalse(validate(scheme, data))
示例#29
0
 def test_bad_003(self):
     x = {AnyOf(int, str): str}
     self.assertFalse(validate(x, {10: "foo", "bar": "zar"}))
示例#30
0
 def test_bad_005(self):
     x = {str: str}
     self.assertFalse(validate(x, {}))