GeezerVisonThe World Wide Web, restored to 800 pixels of glory. |
| Home|About|Gaming cabinet|Archives|How it works|Starter sites |
GeezerVison is showing github.com — pythonVSCode/python_files/testing_tools/unittest_discovery.py at main · Busra67/pythonVSCode Expand file tree/ Copy pathunittest_discovery.pyMore file actions 64 lines (53 loc) · 1.71 KB / Copy pathunittest_discovery.pyFile metadata and controls64 lines (53 loc) · 1.71 KB 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 import contextlib import inspect import os import sys import traceback import unittest start_dir = sys.argv[1] pattern = sys.argv[2] top_level_dir = sys.argv[3] if len(sys.argv) >= 4 else None sys.path.insert(0, os.getcwd()) def get_sourceline(obj): try: s, n = inspect.getsourcelines(obj) except Exception: try: # this handles `tornado` case we need a better # way to get to the wrapped function. # XXX This is a temporary solution s, n = inspect.getsourcelines(obj.orig_method) except Exception: return "*" for i, v in enumerate(s): if v.strip().startswith(("def", "async def")): return str(n + i) return "*" def generate_test_cases(suite): for test in suite: if isinstance(test, unittest.TestCase): yield test else: for test_case in generate_test_cases(test): yield test_case try: loader = unittest.TestLoader() suite = loader.discover(start_dir, pattern=pattern, top_level_dir=top_level_dir) print("start") # Don't remove this line loader_errors = [] for s in generate_test_cases(suite): tm = getattr(s, s._testMethodName) testId = s.id() if testId.startswith("unittest.loader._FailedTest"): loader_errors.append(s._exception) else: print(testId.replace(".", ":") + ":" + get_sourceline(tm)) except Exception: print("=== exception start ===") traceback.print_exc() print("=== exception end ===") for error in loader_errors: with contextlib.suppress(Exception): print("=== exception start ===") print(error.msg) print("=== exception end ===") |
| You are visitor 01402520 — GeezerVison does not store the pages you look up. Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required. |