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 — vscode-python/pythonFiles/testing_tools/unittest_discovery.py at main · gorae17/vscode-python Expand file tree/ Copy pathunittest_discovery.pyMore file actions 65 lines (54 loc) · 1.66 KB / Copy pathunittest_discovery.pyFile metadata and controls65 lines (54 loc) · 1.66 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 65 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: try: # this handles `tornado` case we need a better # way to get to the wrapped function. # This is a temporary solution s, n = inspect.getsourcelines(obj.orig_method) except: 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: print("=== exception start ===") traceback.print_exc() print("=== exception end ===") for error in loader_errors: try: print("=== exception start ===") print(error.msg) print("=== exception end ===") except: pass |
| 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. |