@@ -66,6 +66,20 @@ def main() -> None:
66
66
main()
67
67
"""
68
68
69
+ TESTS_MAIN_PY_WITH_STDLIB = rb"""\
70
+ # verify-helper: PROBLEM http://judge.u-aizu.ac.jp/onlinejudge/description.jsp?id=ITP1_1_B
71
+ from library.imported import solve
72
+ import os
73
+
74
+ def main() -> None:
75
+ x = int(input())
76
+ ans = solve(x)
77
+ print(ans)
78
+
79
+ if __name__ == "__main__":
80
+ main()
81
+ """
82
+
69
83
70
84
class TestPythonVerification (unittest .TestCase ):
71
85
"""TestPythonListDependencies has end-to-end tests for the verification of Python files.
@@ -88,3 +102,23 @@ def test_separated_dir(self) -> None:
88
102
with open (timestamps_path ) as fh :
89
103
timestamps = json .load (fh )
90
104
self .assertEqual (list (timestamps .keys ()), [str (pathlib .Path ('tests' , 'main.py' ))])
105
+
106
+ def test_separated_dir_with_stdlib (self ) -> None :
107
+ """`test_separated_dir_with_stdlib` is a test for the case when the library files exist at the separate directory of the test file.
108
+ In this test, main.py has an import of a module in stdlib.
109
+ """
110
+
111
+ files = {
112
+ pathlib .Path ('library' , '__init__.py' ): b"" ,
113
+ pathlib .Path ('library' , 'imported.py' ): LIBRARY_IMPORTED_PY ,
114
+ pathlib .Path ('tests' , 'main.py' ): TESTS_MAIN_PY_WITH_STDLIB ,
115
+ }
116
+ path = pathlib .Path ('tests' , 'main.py' )
117
+ with tests .utils .load_files_pathlib (files ) as tempdir :
118
+ with tests .utils .chdir (tempdir ):
119
+ timestamps_path = tempdir / 'timestamps.json'
120
+ with onlinejudge_verify .marker .VerificationMarker (json_path = timestamps_path , use_git_timestamp = False ) as marker :
121
+ self .assertEqual (verify .main ([path ], marker = marker ).failed_test_paths , [])
122
+ with open (timestamps_path ) as fh :
123
+ timestamps = json .load (fh )
124
+ self .assertEqual (list (timestamps .keys ()), [str (pathlib .Path ('tests' , 'main.py' ))])
0 commit comments