()
| 92 | |
| 93 | |
| 94 | def test_error_traceback_update() -> None: |
| 95 | fecho = tvm_ffi.get_global_func("testing.echo") |
| 96 | |
| 97 | def raise_error() -> NoReturn: |
| 98 | raise ValueError("error XYZ") |
| 99 | |
| 100 | try: |
| 101 | raise_error() |
| 102 | except ValueError as e: |
| 103 | ffi_error = tvm_ffi.convert(e) |
| 104 | assert ffi_error.backtrace.find("raise_error") != -1 |
| 105 | |
| 106 | def raise_cxx_error() -> None: |
| 107 | cxx_test_raise_error = tvm_ffi.get_global_func("testing.test_raise_error") |
| 108 | cxx_test_raise_error("ValueError", "error XYZ") |
| 109 | |
| 110 | try: |
| 111 | raise_cxx_error() |
| 112 | except ValueError as e: |
| 113 | assert e.__tvm_ffi_error__.backtrace.find("raise_cxx_error") == -1 # ty: ignore[unresolved-attribute] |
| 114 | ffi_error1 = tvm_ffi.convert(e) |
| 115 | ffi_error2 = fecho(e) |
| 116 | assert ffi_error1.backtrace.find("raise_cxx_error") != -1 |
| 117 | assert ffi_error2.backtrace.find("raise_cxx_error") != -1 |
| 118 | |
| 119 | |
| 120 | def test_error_no_cyclic_reference() -> None: |
nothing calls this directly
no test coverage detected