コード例 #1
0
ファイル: property.py プロジェクト: schosterbarak/data-mapper
 def test__default_required(self):
     with self.assertRaises(AssertionError):
         Property(default=5, required=True)
     with self.assertRaises(AssertionError):
         Property(default=None, required=True)
     with self.assertRaises(AssertionError):
         Property(default=0, required=True)
コード例 #2
0
ファイル: property.py プロジェクト: schosterbarak/data-mapper
 def test__errors(self):
     x = Property('x')
     prop = Property(x)
     with self.assertRaises(PropertyNotResolved) as exc:
         prop.get({})
     self.assertIs(prop, exc.exception.prop)
     self.assertIn(str(prop), str(exc.exception))
     self.assertIn(str(x), str(exc.exception))
コード例 #3
0
ファイル: property.py プロジェクト: schosterbarak/data-mapper
 def test__sources_it(self):
     with self.assertRaises(AssertionError):
         Property('x', sources_it=('x',))
     prop = Property(sources_it=range(6))
     self.assertEqual(3, prop.get({i: i for i in range(3, 6)}))
     self.assertEqual(2, prop.get({i: i for i in range(2, 6)}))
     self.assertEqual(1, prop.get({i: i for i in range(1, 6)}))
     self.assertEqual(0, prop.get({i: i for i in range(0, 6)}))
コード例 #4
0
ファイル: property.py プロジェクト: schosterbarak/data-mapper
 def test__root_source(self):
     prop = Property([])
     data = dict(x=1)
     self.assertEqual(data, prop.get(data))
     prop = Property('y', [], 'x')
     self.assertEqual(data, prop.get(data))
コード例 #5
0
ファイル: property.py プロジェクト: schosterbarak/data-mapper
 def test__sources__properties__nested(self):
     self.assertEqual(1, Property([Value(dict(x=1)), Property('x')]).get({}))
コード例 #6
0
ファイル: property.py プロジェクト: schosterbarak/data-mapper
 def test__sources__properties(self):
     self.assertEqual(1, Property(Property('x'), Value(1)).get({}))
コード例 #7
0
ファイル: property.py プロジェクト: schosterbarak/data-mapper
 def test__sources__property__not_found(self):
     with self.assertRaises(PropertyNotResolved):
         Property(Property('x')).get({})
コード例 #8
0
ファイル: property.py プロジェクト: schosterbarak/data-mapper
 def test__sources__property(self):
     self.assertEqual(1, Property(Value(1)).get({}))
コード例 #9
0
ファイル: property.py プロジェクト: schosterbarak/data-mapper
 def test__default_none(self):
     self.assertEqual(None, Property('x', default=None).get({}))
コード例 #10
0
ファイル: property.py プロジェクト: schosterbarak/data-mapper
 def test__default(self):
     self.assertEqual(1, Property('x', default=1).get({}))
コード例 #11
0
ファイル: property.py プロジェクト: schosterbarak/data-mapper
 def test__str(self):
     self.assertEqual('Property([])', str(Property([])))
     self.assertEqual("Property('x')", str(Property('x')))
     self.assertEqual("Property('x', 'y')", str(Property('x', 'y')))
     self.assertEqual('StringProperty()', str(StringProperty()))
コード例 #12
0
ファイル: property.py プロジェクト: schosterbarak/data-mapper
 def test__no_sources(self):
     prop = Property()
     data = dict(x=1)
     self.assertEqual(data, prop.get(data))