mirror of
https://github.com/yweber/lodel2.git
synced 2026-06-07 03:20:48 +02:00
Added unit tests for the Integer Datahandler
This commit is contained in:
parent
83a7b53808
commit
0a6c5c96bd
2 changed files with 31 additions and 1 deletions
|
|
@ -37,7 +37,11 @@ class Integer(DataField):
|
|||
def _check_data_value(self, value):
|
||||
error = None
|
||||
try:
|
||||
value = int(value)
|
||||
value = float(value)
|
||||
if value % 1 == 0:
|
||||
value = int(value)
|
||||
else:
|
||||
raise TypeError()
|
||||
except(ValueError, TypeError):
|
||||
error = TypeError("The value '%s' is not, and will never, be an integer" % value)
|
||||
return value, error
|
||||
|
|
|
|||
26
tests/datahandlers/test_integer.py
Normal file
26
tests/datahandlers/test_integer.py
Normal file
|
|
@ -0,0 +1,26 @@
|
|||
import unittest
|
||||
|
||||
from lodel.leapi.datahandlers.datas import Integer, Boolean
|
||||
|
||||
|
||||
class IntegerTestCase(unittest.TestCase):
|
||||
|
||||
def test_integer_check_data_value(self):
|
||||
test_int = Integer()
|
||||
|
||||
# Incorrect values
|
||||
for test_bad_value in ['ok','ceci est un test', '15.2', 15.2]:
|
||||
_, error = test_int._check_data_value(test_bad_value)
|
||||
self.assertIsNotNone(error)
|
||||
print(test_bad_value)
|
||||
|
||||
# Correct values
|
||||
for test_correct_value in [10, '15', '15.0']:
|
||||
_, error = test_int._check_data_value(test_correct_value)
|
||||
self.assertIsNone(error)
|
||||
print(test_correct_value)
|
||||
|
||||
def test_can_override(self):
|
||||
test_int = Integer()
|
||||
test_boolean = Boolean()
|
||||
self.assertFalse(test_int.can_override(test_boolean))
|
||||
Loading…
Add table
Add a link
Reference in a new issue