1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112
|
import sys
import friendly_traceback
import tkinter
def test_Standard_library_module():
try:
import Tkinter
except ModuleNotFoundError as e:
message = str(e)
friendly_traceback.explain_traceback(redirect="capture")
result = friendly_traceback.get_output()
assert "No module named 'Tkinter'" in result
if friendly_traceback.get_lang() == "en":
assert "Did you mean `tkinter`" in result
if friendly_traceback._writing_docs:
return result, message
def test_Not_a_package():
try:
import os.xxx
except ModuleNotFoundError as e:
friendly_traceback.explain_traceback(redirect="capture")
message = str(e)
result = friendly_traceback.get_output()
assert "No module named" in result and "'os.xxx'" in result
if friendly_traceback.get_lang() == "en":
assert "`xxx` cannot be imported" in result
if friendly_traceback._writing_docs:
return result, message
def test_Not_a_package_similar_name():
try:
import os.pathh
except ModuleNotFoundError as e:
message = str(e)
friendly_traceback.explain_traceback(redirect="capture")
result = friendly_traceback.get_output()
assert "No module named" in result and "'os.pathh'" in result
if friendly_traceback.get_lang() == "en":
assert "Did you mean `import os.path`" in result
if friendly_traceback._writing_docs:
return result, message
def test_Object_not_module():
try:
import os.open
except ModuleNotFoundError as e:
message = str(e)
friendly_traceback.explain_traceback(redirect="capture")
result = friendly_traceback.get_output()
assert "No module named" in result and " 'os.open'" in result
if friendly_traceback.get_lang() == "en":
assert "Did you mean `from os import open`?" in result
if friendly_traceback._writing_docs:
return result, message
def test_Similar_object_not_module():
try:
import os.opend
except ModuleNotFoundError as e:
message = str(e)
friendly_traceback.explain_traceback(redirect="capture")
result = friendly_traceback.get_output()
assert "No module named" in result and " 'os.opend'" in result
if friendly_traceback.get_lang() == "en":
assert "Did you mean `from os import open`?" in result
assert "`open` is a name similar to `opend`" in result
if friendly_traceback._writing_docs:
return result, message
def test_Need_to_install_module():
try:
import alphabet
except ModuleNotFoundError as e:
message = str(e)
friendly_traceback.explain_traceback(redirect="capture")
result = friendly_traceback.get_output()
assert "No module named 'alphabet'" in result
if friendly_traceback.get_lang() == "en":
assert "Perhaps you need to install it" in result
if friendly_traceback._writing_docs:
return result, message
if sys.platform.startswith("win"):
def test_no_curses():
try:
import curses
except ModuleNotFoundError as e:
message = str(e)
friendly_traceback.explain_traceback(redirect="capture")
result = friendly_traceback.get_output()
assert "No module named '_curses'" in result
if friendly_traceback.get_lang() == "en":
assert "The curses module is rarely installed with Python on Windows." in result
if friendly_traceback._writing_docs:
return result, message
if __name__ == "__main__":
print(test_Standard_library_module()[0])
|