Merged revisions 79502 via svnmerge from

svn+ssh://pythondev@svn.python.org/python/trunk

........
  r79502 | antoine.pitrou | 2010-03-30 20:49:45 +0200 (mar., 30 mars 2010) | 4 lines

  Issue #8248: Add some tests for the bool type.  Patch by Gregory Nofi.
........
This commit is contained in:
Antoine Pitrou 2010-03-30 18:56:19 +00:00
parent 25cd7eb9a1
commit 503ab33e54
5 changed files with 23 additions and 0 deletions

View File

@ -45,6 +45,12 @@ class BoolTest(unittest.TestCase):
self.assertEqual(int(True), 1) self.assertEqual(int(True), 1)
self.assertIsNot(int(True), True) self.assertIsNot(int(True), True)
def test_float(self):
self.assertEqual(float(False), 0.0)
self.assertIsNot(float(False), False)
self.assertEqual(float(True), 1.0)
self.assertIsNot(float(True), True)
def test_math(self): def test_math(self):
self.assertEqual(+False, 0) self.assertEqual(+False, 0)
self.assertIsNot(+False, False) self.assertIsNot(+False, False)
@ -235,6 +241,12 @@ class BoolTest(unittest.TestCase):
finally: finally:
os.remove(support.TESTFN) os.remove(support.TESTFN)
def test_types(self):
# types are always true.
for t in [bool, complex, dict, float, int, list, object,
set, str, tuple, type]:
self.assertIs(bool(t), True)
def test_operator(self): def test_operator(self):
import operator import operator
self.assertIs(operator.truth(0), False) self.assertIs(operator.truth(0), False)

View File

@ -472,6 +472,12 @@ class DecimalExplicitConstructionTest(unittest.TestCase):
self.assertRaises(ValueError, Decimal, (1, (4, 10, 4, 9, 1), 2) ) self.assertRaises(ValueError, Decimal, (1, (4, 10, 4, 9, 1), 2) )
self.assertRaises(ValueError, Decimal, (1, (4, 3, 4, 'a', 1), 2) ) self.assertRaises(ValueError, Decimal, (1, (4, 3, 4, 'a', 1), 2) )
def test_explicit_from_bool(self):
self.assertIs(bool(Decimal(0)), False)
self.assertIs(bool(Decimal(1)), True)
self.assertEqual(Decimal(False), Decimal(0))
self.assertEqual(Decimal(True), Decimal(1))
def test_explicit_from_Decimal(self): def test_explicit_from_Decimal(self):
#positive #positive

View File

@ -39,6 +39,8 @@ class BaseTestCase(unittest.TestCase):
self.assertEqual(-7 .__index__(), -7) self.assertEqual(-7 .__index__(), -7)
self.assertEqual(self.o.__index__(), 4) self.assertEqual(self.o.__index__(), 4)
self.assertEqual(self.n.__index__(), 5) self.assertEqual(self.n.__index__(), 5)
self.assertEqual(True.__index__(), 1)
self.assertEqual(False.__index__(), 0)
def test_subclasses(self): def test_subclasses(self):
r = list(range(10)) r = list(range(10))

View File

@ -549,6 +549,7 @@ Samuel Nicolary
Gustavo Niemeyer Gustavo Niemeyer
Oscar Nierstrasz Oscar Nierstrasz
Hrvoje Niksic Hrvoje Niksic
Gregory Nofi
Jesse Noller Jesse Noller
Bill Noon Bill Noon
Stefan Norberg Stefan Norberg

View File

@ -956,6 +956,8 @@ Documentation
Tests Tests
----- -----
- Issue #8248: Add some tests for the bool type. Patch by Gregory Nofi.
- Issue #8180 and #8207: Fix test_pep277 on OS X and add more tests for special - Issue #8180 and #8207: Fix test_pep277 on OS X and add more tests for special
Unicode normalization cases. Unicode normalization cases.