|
@@ 1042-1064 (lines=23) @@
|
| 1039 |
|
self.runs(code_str2, from_version(version1)) |
| 1040 |
|
self.runs(code_str3, from_version(version1)) |
| 1041 |
|
|
| 1042 |
|
def test_moved_between_imp_importlib(self): |
| 1043 |
|
"""Some methods have been moved from imp to importlib.""" |
| 1044 |
|
# NICE_TO_HAVE |
| 1045 |
|
# reload removed from Python 3 |
| 1046 |
|
# importlib module new in Python 2.7 |
| 1047 |
|
# importlib.reload new in Python 3.4 |
| 1048 |
|
# imp.reload new in Python 3.2 |
| 1049 |
|
version27 = (2, 7) |
| 1050 |
|
version3 = (3, 0) |
| 1051 |
|
version26 = up_to_version(version27) |
| 1052 |
|
code = '{0}reload(math)' |
| 1053 |
|
null, code_imp, code_importlib = format_str( |
| 1054 |
|
code, '', 'import imp\nimp.', 'import importlib\nimportlib.') |
| 1055 |
|
self.runs(null, up_to_version(version3)) |
| 1056 |
|
self.throws(null, NAMEERROR, |
| 1057 |
|
RELOAD_REMOVED_MSG, from_version(version3)) |
| 1058 |
|
self.runs(code_imp) |
| 1059 |
|
self.throws(code_importlib, NOMODULE, [], version26) |
| 1060 |
|
self.throws(code_importlib, ATTRIBUTEERROR, |
| 1061 |
|
"'reload(module)'", (version27, version3)) |
| 1062 |
|
self.throws(code_importlib, ATTRIBUTEERROR, |
| 1063 |
|
[], (version3, (3, 4))) |
| 1064 |
|
self.runs(code_importlib, from_version((3, 4))) |
| 1065 |
|
|
| 1066 |
|
def test_join(self): |
| 1067 |
|
"""Test what happens when join is used incorrectly. |
|
@@ 1473-1489 (lines=17) @@
|
| 1470 |
|
self.throws(bad_code, INTEXPECTED, [], up_to_version(v3)) |
| 1471 |
|
self.throws(bad_code, CANNOTBEINTERPRETED, [], from_version(v3)) |
| 1472 |
|
|
| 1473 |
|
def test_float_cannot_be_interpreted_as_int(self): |
| 1474 |
|
"""Use float instead of int.""" |
| 1475 |
|
# NICE_TO_HAVE |
| 1476 |
|
v27 = (2, 7) |
| 1477 |
|
v3 = (3, 0) |
| 1478 |
|
for code in self.RANGE_CODE_TEMPLATES: |
| 1479 |
|
full_code = 'import math\n' + code |
| 1480 |
|
good1, good2, bad = format_str( |
| 1481 |
|
full_code, 'int(12.0)', 'math.floor(12.0)', '12.0') |
| 1482 |
|
self.runs(good1) |
| 1483 |
|
self.runs(good2, up_to_version(v27)) |
| 1484 |
|
# floor returns a float before Python 3 -_- |
| 1485 |
|
self.throws(good2, INTEXPECTED, [], (v27, v3)) |
| 1486 |
|
self.runs(good2, from_version(v3)) |
| 1487 |
|
self.runs(bad, up_to_version(v27)) |
| 1488 |
|
self.throws(bad, INTEXPECTED, [], (v27, v3)) |
| 1489 |
|
self.throws(bad, CANNOTBEINTERPRETED, [], from_version(v3)) |
| 1490 |
|
|
| 1491 |
|
def test_customclass_cannot_be_interpreter_as_int(self): |
| 1492 |
|
"""Forget to implement the __index__ method.""" |