mirror of
https://github.com/Infinidat/infi.clickhouse_orm.git
synced 2025-02-19 18:00:32 +03:00
Added a test for isinstance and fixed a bug
This commit is contained in:
parent
3fa18d32d9
commit
5059902947
|
@ -92,7 +92,7 @@ class Field(object):
|
|||
while inner_field:
|
||||
if isinstance(inner_field, types):
|
||||
return True
|
||||
inner_field = getattr(self, 'inner_field', None)
|
||||
inner_field = getattr(inner_field, 'inner_field', None)
|
||||
return False
|
||||
|
||||
|
||||
|
|
|
@ -73,6 +73,22 @@ class NullableFieldsTest(unittest.TestCase):
|
|||
else:
|
||||
self.assertEquals(python_value, value)
|
||||
|
||||
def test_isinstance(self):
|
||||
for field in (StringField, UInt8Field, Float32Field, DateTimeField):
|
||||
f = NullableField(field())
|
||||
self.assertTrue(f.isinstance(field))
|
||||
self.assertTrue(f.isinstance(NullableField))
|
||||
for field in (Int8Field, Int16Field, Int32Field, Int64Field, UInt8Field, UInt16Field, UInt32Field, UInt64Field):
|
||||
f = NullableField(field())
|
||||
self.assertTrue(f.isinstance(BaseIntField))
|
||||
for field in (Float32Field, Float64Field):
|
||||
f = NullableField(field())
|
||||
self.assertTrue(f.isinstance(BaseFloatField))
|
||||
f = NullableField(NullableField(UInt32Field()))
|
||||
self.assertTrue(f.isinstance(BaseIntField))
|
||||
self.assertTrue(f.isinstance(NullableField))
|
||||
self.assertFalse(f.isinstance(BaseFloatField))
|
||||
|
||||
def _insert_sample_data(self):
|
||||
dt = date(1970, 1, 1)
|
||||
self.database.insert([
|
||||
|
|
Loading…
Reference in New Issue
Block a user