[Checkins] SVN: zope.schema/branches/tseaver-test_cleanup/src/zope/schema/tests/test__field.py Coverage for z.s._f.{ASCII, Float, Decimal, Date}.
Tres Seaver
cvs-admin at zope.org
Mon Apr 23 21:59:45 UTC 2012
Log message for revision 125259:
Coverage for z.s._f.{ASCII,Float,Decimal,Date}.
Changed:
U zope.schema/branches/tseaver-test_cleanup/src/zope/schema/tests/test__field.py
-=-
Modified: zope.schema/branches/tseaver-test_cleanup/src/zope/schema/tests/test__field.py
===================================================================
--- zope.schema/branches/tseaver-test_cleanup/src/zope/schema/tests/test__field.py 2012-04-23 21:59:38 UTC (rev 125258)
+++ zope.schema/branches/tseaver-test_cleanup/src/zope/schema/tests/test__field.py 2012-04-23 21:59:42 UTC (rev 125259)
@@ -81,10 +81,86 @@
self.assertEqual(bl.constraint(b('one line')), True)
+class ASCIILineTests(BytesLineTests):
+
+ def _getTargetClass(self):
+ from zope.schema._field import ASCIILine
+ return ASCIILine
+
+
+class FloatTests(unittest.TestCase):
+
+ def _getTargetClass(self):
+ from zope.schema._field import Float
+ return Float
+
+ def _makeOne(self, *args, **kw):
+ return self._getTargetClass()(*args, **kw)
+
+ def test_fromUnicode_miss(self):
+ from zope.schema._compat import u
+ flt = self._makeOne()
+ self.assertRaises(ValueError, flt.fromUnicode, u(''))
+ self.assertRaises(ValueError, flt.fromUnicode, u('abc'))
+ self.assertRaises(ValueError, flt.fromUnicode, u('14.G'))
+
+ def test_fromUnicode_hit(self):
+ from zope.schema._compat import u
+ flt = self._makeOne()
+ self.assertEqual(flt.fromUnicode(u('0')), 0.0)
+ self.assertEqual(flt.fromUnicode(u('1.23')), 1.23)
+ self.assertEqual(flt.fromUnicode(u('1.23e6')), 1230000.0)
+
+
+class DecimalTests(unittest.TestCase):
+
+ def _getTargetClass(self):
+ from zope.schema._field import Decimal
+ return Decimal
+
+ def _makeOne(self, *args, **kw):
+ return self._getTargetClass()(*args, **kw)
+
+ def test_fromUnicode_miss(self):
+ from zope.schema._compat import u
+ flt = self._makeOne()
+ self.assertRaises(ValueError, flt.fromUnicode, u(''))
+ self.assertRaises(ValueError, flt.fromUnicode, u('abc'))
+ self.assertRaises(ValueError, flt.fromUnicode, u('1.4G'))
+
+ def test_fromUnicode_hit(self):
+ from decimal import Decimal
+ from zope.schema._compat import u
+ flt = self._makeOne()
+ self.assertEqual(flt.fromUnicode(u('0')), Decimal('0.0'))
+ self.assertEqual(flt.fromUnicode(u('1.23')), Decimal('1.23'))
+ self.assertEqual(flt.fromUnicode(u('12345.6')), Decimal('12345.6'))
+
+
+class DateTests(unittest.TestCase):
+
+ def _getTargetClass(self):
+ from zope.schema._field import Date
+ return Date
+
+ def _makeOne(self, *args, **kw):
+ return self._getTargetClass()(*args, **kw)
+
+ def test__validate_miss(self):
+ from datetime import datetime
+ from zope.schema.interfaces import WrongType
+ asc = self._makeOne()
+ self.assertRaises(WrongType, asc._validate, datetime.now())
+
+
def test_suite():
return unittest.TestSuite((
unittest.makeSuite(BytesTests),
unittest.makeSuite(ASCIITests),
unittest.makeSuite(BytesLineTests),
+ unittest.makeSuite(ASCIILineTests),
+ unittest.makeSuite(FloatTests),
+ unittest.makeSuite(DecimalTests),
+ unittest.makeSuite(DateTests),
))
More information about the checkins
mailing list