(builtins_path: str, testcase: DataDrivenTestCase)
| 51 | |
| 52 | @contextlib.contextmanager |
| 53 | def use_custom_builtins(builtins_path: str, testcase: DataDrivenTestCase) -> Iterator[None]: |
| 54 | for path, _ in testcase.files: |
| 55 | if os.path.basename(path) == "builtins.pyi": |
| 56 | default_builtins = False |
| 57 | break |
| 58 | else: |
| 59 | # Use default builtins. |
| 60 | builtins = os.path.abspath(os.path.join(test_temp_dir, "builtins.pyi")) |
| 61 | shutil.copyfile(builtins_path, builtins) |
| 62 | default_builtins = True |
| 63 | |
| 64 | # Actually perform the test case. |
| 65 | try: |
| 66 | yield None |
| 67 | finally: |
| 68 | if default_builtins: |
| 69 | # Clean up. |
| 70 | os.remove(builtins) |
| 71 | |
| 72 | |
| 73 | def perform_test( |
no test coverage detected
searching dependent graphs…