def _to_dict(value):
     if is_primitive(value):
         return value
     if is_list(value):
         return [_to_dict(x) for x in value]
     if is_mapping(value):
         return {key: _to_dict(value) for key, value in value.items()}
예제 #2
0
 def inner(inner_value: Any) -> bool:
     """
     Checks whether inner_value is a SimpleMapping
     """
     if not is_mapping(inner_value):
         return False
     for (key, val) in inner_value.items():
         # Wrong type for key or value
         if not (is_str(key) and
                 (is_primitive(val) or is_simple_list(val)
                  or inner(val))):
             return False
     # All dictionary items have correct type
     return True
 def test_is_not_primitive_3(self):
     self.assertThatNot(is_primitive(range(6)))
 def test_is_not_primitive_2(self):
     self.assertThatNot(is_primitive({}))
 def test_is_not_primitive_1(self):
     self.assertThatNot(is_primitive([]))
 def test_is_primitive_12(self):
     self.assertThat(is_primitive(-13.12))
 def test_is_primitive_11(self):
     self.assertThat(is_primitive(42.42))
 def test_is_primitive_10(self):
     self.assertThat(is_primitive(-42))
 def test_is_primitive_8(self):
     self.assertThat(is_primitive('foo'))
 def test_is_primitive_7(self):
     self.assertThat(is_primitive(None))
 def test_is_primitive_6(self):
     self.assertThat(is_primitive(''))
 def test_is_primitive_5(self):
     self.assertThat(is_primitive(0.0))
 def test_is_primitive_3(self):
     self.assertThat(is_primitive(False))
 def test_is_primitive_2(self):
     self.assertThat(is_primitive(True))
 def test_is_primitive_1(self):
     self.assertThat(is_primitive(1))
예제 #16
0
 def is_simple_list(item: Any) -> bool:
     """Checks whether input object is a simple list"""
     return is_list(item) and all(
         is_primitive(x) or SimpleMappingRepresentable.
         is_simple_mapping(x) or is_simple_list(x) for x in item)