예제 #1
0
 def test_float(self):
     props = PropertyDict({"value": 3.141})
     assert props == {"value": 3.141}
예제 #2
0
 def test_unicode_strings_are_supported(self):
     props = PropertyDict({"value": u"hello, world"})
     assert props == {"value": u"hello, world"}
예제 #3
0
 def test_integer_too_high(self):
     with self.assertRaises(ValueError):
         PropertyDict({"value": 2**64})
예제 #4
0
 def test_integer_too_low(self):
     with self.assertRaises(ValueError):
         PropertyDict({"value": -(2**64)})
예제 #5
0
 def test_getter_with_none(self):
     properties = PropertyDict({"name": "Alice"})
     assert properties["age"] is None
예제 #6
0
 def test_integer_in_range(self):
     props = PropertyDict({"value": 1})
     assert props == {"value": 1}
예제 #7
0
 def test_setdefault_with_default_with_non_existent(self):
     properties = PropertyDict({"name": "Alice"})
     value = properties.setdefault("age", 33)
     assert properties == {"name": "Alice", "age": 33}
     assert value == 33
예제 #8
0
 def test_homogenous_list_of_strings(self):
     props = PropertyDict({"value": [u"hello", b"world"]})
     assert props == {"value": [u"hello", u"world"]}
예제 #9
0
 def test_setdefault_without_default_with_existing(self):
     properties = PropertyDict({"name": "Alice", "age": 33})
     value = properties.setdefault("age")
     assert properties == {"name": "Alice", "age": 33}
     assert value == 33
예제 #10
0
 def test_setdefault_without_default_with_non_existent(self):
     properties = PropertyDict({"name": "Alice"})
     value = properties.setdefault("age")
     assert properties == {"name": "Alice"}
     assert value is None
예제 #11
0
 def test_setter_with_none_for_non_existent(self):
     properties = PropertyDict({"name": "Alice"})
     properties["age"] = None
     assert properties == {"name": "Alice"}
예제 #12
0
 def test_setter_with_none(self):
     properties = PropertyDict({"name": "Alice", "age": 33})
     properties["age"] = None
     assert properties == {"name": "Alice"}
예제 #13
0
 def test_setter(self):
     properties = PropertyDict({"name": "Alice"})
     properties["age"] = 33
     assert properties == {"name": "Alice", "age": 33}
예제 #14
0
 def test_byte_arrays_are_not_supported(self):
     with self.assertRaises(TypeError):
         PropertyDict({"value": bytearray(b"hello, world")})
예제 #15
0
 def test_deleter(self):
     properties = PropertyDict({"name": "Alice", "age": 33})
     del properties["age"]
     assert properties == {"name": "Alice"}
예제 #16
0
 def test_homogenous_list(self):
     props = PropertyDict({"value": [1, 2, 3]})
     assert props == {"value": [1, 2, 3]}
예제 #17
0
 def test_boolean(self):
     props = PropertyDict({"value": True})
     assert props == {"value": True}
예제 #18
0
 def test_heterogenous_list(self):
     with self.assertRaises(TypeError):
         PropertyDict({"value": [True, 2, u"three"]})
예제 #19
0
 def test_getter(self):
     properties = PropertyDict({"name": "Alice"})
     assert properties["name"] == "Alice"