import unittest
from decimal import *
import numbers
-from test.test_support import (run_unittest, run_doctest, is_resource_enabled)
+from test.test_support import (run_unittest, run_doctest,
+ is_resource_enabled, check_py3k_warnings)
import random
try:
import threading
if skip_expected:
raise unittest.SkipTest
return
- for line in open(file).xreadlines():
+ for line in open(file):
line = line.replace('\r\n', '').replace('\n', '')
#print line
try:
myexceptions = self.getexceptions()
self.context.clear_flags()
- myexceptions.sort()
- theirexceptions.sort()
-
self.assertEqual(result, ans,
'Incorrect answer for ' + s + ' -- got ' + result)
- self.assertEqual(myexceptions, theirexceptions,
+ self.assertItemsEqual(myexceptions, theirexceptions,
'Incorrect flags set in ' + s + ' -- got ' + str(myexceptions))
return
('//', '__floordiv__', '__rfloordiv__'),
('**', '__pow__', '__rpow__')
]
- if 1/2 == 0:
- # testing with classic division, so add __div__
- oplist.append(('/', '__div__', '__rdiv__'))
- else:
- # testing with -Qnew, so add __truediv__
- oplist.append(('/', '__truediv__', '__rtruediv__'))
+ with check_py3k_warnings():
+ if 1 / 2 == 0:
+ # testing with classic division, so add __div__
+ oplist.append(('/', '__div__', '__rdiv__'))
+ else:
+ # testing with -Qnew, so add __truediv__
+ oplist.append(('/', '__truediv__', '__rtruediv__'))
for sym, lop, rop in oplist:
setattr(E, lop, lambda self, other: 'str' + lop + str(other))
self.assertEqual(a, b)
# with None
- self.assertFalse(Decimal(1) < None)
- self.assertTrue(Decimal(1) > None)
+ with check_py3k_warnings():
+ self.assertFalse(Decimal(1) < None)
+ self.assertTrue(Decimal(1) > None)
def test_copy_and_deepcopy_methods(self):
d = Decimal('43.24')
for flag in extra_flags:
if flag not in expected_flags:
expected_flags.append(flag)
- expected_flags.sort()
# flags we actually got
new_flags = [k for k,v in context.flags.items() if v]
- new_flags.sort()
self.assertEqual(ans, new_ans,
"operation produces different answers depending on flags set: " +
"expected %s, got %s." % (ans, new_ans))
- self.assertEqual(new_flags, expected_flags,
+ self.assertItemsEqual(new_flags, expected_flags,
"operation raises different flags depending on flags set: " +
"expected %s, got %s" % (expected_flags, new_flags))