diff --git a/Lib/test/test_socket.py b/Lib/test/test_socket.py index 44b42ffa115..301cd70499b 100644 --- a/Lib/test/test_socket.py +++ b/Lib/test/test_socket.py @@ -248,15 +248,14 @@ def testInterpreterCrash(self): pass def testNtoH(self): - def twice(f): - def g(x): - return f(f(x)) - return g - for i in (0, 1, 0xffff0000, 2L, (2**32L) - 1): - self.assertEqual(i, twice(socket.htonl)(i)) - self.assertEqual(i, twice(socket.ntohl)(i)) - self.assertRaises(OverflowError, socket.htonl, 2L**34) - self.assertRaises(OverflowError, socket.ntohl, 2L**34) + for func in socket.htonl, socket.ntohl: + for i in (0, 1, 0xffff0000, 2L): + self.assertEqual(i, func(func(i))) + + biglong = 2**32L - 1 + swapped = func(biglong) + self.assert_(swapped == biglong or swapped == -1) + self.assertRaises(OverflowError, func, 2L**34) def testGetServByName(self): """Testing getservbyname()."""