Files
micropython/tests/ports/webassembly/run_python_async_error.mjs
Damien George 9da63a343e webassembly/proxy_c: Reject promises with a PythonError instance.
The `reason` in a rejected promise should be an instance of `Error`.  That
leads to better error messages on the JavaScript side.

Signed-off-by: Damien George <damien@micropython.org>
2024-05-06 14:04:13 +10:00

12 lines
358 B
JavaScript

// Test raising an exception in async Python code running in runPythonAsync,
// that the JavaScript-level promise is rejected with a PythonError.
const mp = await (await import(process.argv[2])).loadMicroPython();
try {
await mp.runPythonAsync("await fail");
} catch (error) {
console.log(error.name, error.type);
console.log(error.message);
}