Add unittest for Float fields

This commit is contained in:
Cédric Krier
2009-05-29 10:34:00 +02:00
parent 470777919e
commit e68337a42c
2 changed files with 203 additions and 0 deletions
+180
View File
@@ -68,6 +68,9 @@ class FieldsTestCase(unittest.TestCase):
self.integer = RPCProxy('tests.integer')
self.integer_default = RPCProxy('tests.integer_default')
self.float = RPCProxy('tests.float')
self.float_default = RPCProxy('tests.float_default')
def test0010boolean(self):
'''
Test Boolean.
@@ -337,6 +340,183 @@ class FieldsTestCase(unittest.TestCase):
'integer': 'test',
}, CONTEXT)
def test0030float(self):
'''
Test Float.
'''
float1_id = self.float.create({
'float': 1.1,
}, CONTEXT)
self.assert_(float1_id)
float1 = self.float.read(float1_id, ['float'], CONTEXT)
self.assert_(float1['float'] == 1.1)
float_ids = self.float.search([
('float', '=', 1.1),
], CONTEXT)
self.assert_(float_ids == [float1_id])
float_ids = self.float.search([
('float', '=', 0),
], CONTEXT)
self.assert_(float_ids == [])
float_ids = self.float.search([
('float', '!=', 1.1),
], CONTEXT)
self.assert_(float_ids == [])
float_ids = self.float.search([
('float', '!=', 0),
], CONTEXT)
self.assert_(float_ids == [float1_id])
float_ids = self.float.search([
('float', 'in', [1.1]),
], CONTEXT)
self.assert_(float_ids == [float1_id])
float_ids = self.float.search([
('float', 'in', [0]),
], CONTEXT)
self.assert_(float_ids == [])
float_ids = self.float.search([
('float', 'in', []),
], CONTEXT)
self.assert_(float_ids == [])
float_ids = self.float.search([
('float', 'not in', [1.1]),
], CONTEXT)
self.assert_(float_ids == [])
float_ids = self.float.search([
('float', 'not in', [0]),
], CONTEXT)
self.assert_(float_ids == [float1_id])
float_ids = self.float.search([
('float', 'not in', []),
], CONTEXT)
self.assert_(float_ids == [float1_id])
float_ids = self.float.search([
('float', '<', 5),
], CONTEXT)
self.assert_(float_ids == [float1_id])
float_ids = self.float.search([
('float', '<', -5),
], CONTEXT)
self.assert_(float_ids == [])
float_ids = self.float.search([
('float', '<', 1.1),
], CONTEXT)
self.assert_(float_ids == [])
float_ids = self.float.search([
('float', '<=', 5),
], CONTEXT)
self.assert_(float_ids == [float1_id])
float_ids = self.float.search([
('float', '<=', -5),
], CONTEXT)
self.assert_(float_ids == [])
float_ids = self.float.search([
('float', '<=', 1.1),
], CONTEXT)
self.assert_(float_ids == [float1_id])
float_ids = self.float.search([
('float', '>', 5),
], CONTEXT)
self.assert_(float_ids == [])
float_ids = self.float.search([
('float', '>', -5),
], CONTEXT)
self.assert_(float_ids == [float1_id])
float_ids = self.float.search([
('float', '>', 1.1),
], CONTEXT)
self.assert_(float_ids == [])
float_ids = self.float.search([
('float', '>=', 5),
], CONTEXT)
self.assert_(float_ids == [])
float_ids = self.float.search([
('float', '>=', -5),
], CONTEXT)
self.assert_(float_ids == [float1_id])
float_ids = self.float.search([
('float', '>=', 1.1),
], CONTEXT)
self.assert_(float_ids == [float1_id])
float2_id = self.float.create({
'float': 0,
}, CONTEXT)
self.assert_(float2_id)
float2 = self.float.read(float2_id, ['float'], CONTEXT)
self.assert_(float2['float'] == 0)
float_ids = self.float.search([
('float', '=', 0),
], CONTEXT)
self.assert_(float_ids == [float2_id])
float_ids = self.float.search([
('float', 'in', [0, 1.1]),
], CONTEXT)
self.assert_(float_ids == [float1_id, float2_id])
float_ids = self.float.search([
('float', 'not in', [0, 1.1]),
], CONTEXT)
self.assert_(float_ids == [])
float3_id = self.float.create({}, CONTEXT)
self.assert_(float3_id)
float3 = self.float.read(float3_id, ['float'], CONTEXT)
self.assert_(float3['float'] == 0)
float4_id = self.float_default.create({}, CONTEXT)
self.assert_(float4_id)
float4 = self.float_default.read(float4_id, ['float'], CONTEXT)
self.assert_(float4['float'] == 5.5)
self.float.write(float1_id, {
'float': 0,
}, CONTEXT)
float1 = self.float.read(float1_id, ['float'] , CONTEXT)
self.assert_(float1['float'] == 0)
self.float.write(float2_id, {
'float': 1.1,
}, CONTEXT)
float2 = self.float.read(float2_id, ['float'], CONTEXT)
self.assert_(float2['float'] == 1.1)
self.failUnlessRaises(Exception, self.float.create, {
'float': 'test',
}, CONTEXT)
self.failUnlessRaises(Exception, self.float.write, float1_id, {
'float': 'test',
}, CONTEXT)
class MPTTTestCase(unittest.TestCase):
'''
+23
View File
@@ -58,3 +58,26 @@ class IntegerDefault(ModelSQL):
return 5
IntegerDefault()
class Float(ModelSQL):
'Float'
_name = 'tests.float'
_description = __doc__
float = fields.Float(string='Float', help='Test float',
required=False)
Float()
class FloatDefault(ModelSQL):
'Float Default'
_name = 'tests.float_default'
_description = __doc__
float = fields.Float(string='Float', help='Test float',
required=False)
def default_float(self, cursor, user, context=None):
return 5.5
FloatDefault()