def test_noneType(self): self.assertNotEqual(_securehash(None), _securehash(False)) self.assertNotEqual(_securehash(None), _securehash(True)) self.assertNotEqual(_securehash(None), _securehash(0))
def test_problematicFloats(self): self.assertEqual(_securehash(0.0), _securehash(-0.0)) self.assertEqual(_securehash(0), _securehash(float('nan'))) self.assertEqual(_securehash(314159), _securehash(float('inf'))) self.assertEqual(_securehash(-271828), _securehash(float('-inf')))
def test_boolInt(self): self.assertEqual(_securehash(True), _securehash(1)) self.assertEqual(_securehash(False), _securehash(0)) self.assertEqual(_securehash(False), _securehash(0.0)) self.assertNotEqual(_securehash(True), _securehash(False))
def test_strUnicode(self): self.assertNotEqual(_securehash("abc"), _securehash("123")) self.assertNotEqual(_securehash(""), _securehash("abc")) self.assertNotEqual(_securehash(u"abc"), _securehash(u"123")) self.assertNotEqual(_securehash(u""), _securehash(u"abc")) self.assertEqual(_securehash("abc"), _securehash(u"abc")) self.assertEqual(_securehash(""), _securehash(u"")) self.assertNotEqual(_securehash("\xff"), _securehash(u"\xff")) # Test that bad implementation ideas weren't implemented self.assertNotEqual(_securehash("\xec\xb3\x8c"), _securehash(u"\ucccc")) self.assertNotEqual(_securehash("\xcc\x00"), _securehash(u"\u00cc")) self.assertNotEqual(_securehash("\xcc\x00\x00\x00"), _securehash(u"\u00cc"))
def test_intLong(self): self.assertEqual(_securehash(123), _securehash(123L)) self.assertEqual(_securehash(123), _securehash(123)) self.assertEqual(_securehash(5), _securehash(5.0)) self.assertEqual(_securehash(5L), _securehash(5.0)) self.assertNotEqual(_securehash(5.0), _securehash(5.4)) self.assertNotEqual(_securehash(5.0), _securehash(5.0000000000001)) self.assertNotEqual(_securehash(0), _securehash(1)) self.assertNotEqual(_securehash(-1), _securehash(0)) # Test that bad implementation ideas weren't implemented self.assertNotEqual(_securehash(123), _securehash("123")) self.assertNotEqual(_securehash(123L), _securehash("123")) self.assertNotEqual(_securehash(123L), _securehash("123L"))
def test_notSupportedYet(self): self.assertRaises(TypeError, lambda: _securehash((1, 2, 3)))