Issue #10356: hash(Decimal("sNaN")) now raises ValueError instead of TypeError.
This commit is contained in:
parent
d28f790b69
commit
d8b661dd90
|
@ -943,7 +943,7 @@ class Decimal(object):
|
|||
# in the documentation. (See library docs, 'Built-in Types').
|
||||
if self._is_special:
|
||||
if self.is_snan():
|
||||
raise TypeError('Cannot hash a signaling NaN value.')
|
||||
raise ValueError('Cannot hash a signaling NaN value.')
|
||||
elif self.is_nan():
|
||||
return _PyHASH_NAN
|
||||
else:
|
||||
|
|
|
@ -1346,7 +1346,7 @@ class DecimalUsabilityTest(unittest.TestCase):
|
|||
|
||||
#the same hash that to an int
|
||||
self.assertEqual(hashit(Decimal(23)), hashit(23))
|
||||
self.assertRaises(TypeError, hash, Decimal('sNaN'))
|
||||
self.assertRaises(ValueError, hash, Decimal('sNaN'))
|
||||
self.assertTrue(hashit(Decimal('Inf')))
|
||||
self.assertTrue(hashit(Decimal('-Inf')))
|
||||
|
||||
|
|
Loading…
Reference in New Issue