From 412c881cd4670d0dd75c704f42269c3187a55ff5 Mon Sep 17 00:00:00 2001 From: Karl Seguin Date: Sat, 17 Jan 2026 11:46:22 +0800 Subject: [PATCH] fix wpt and legacy_test runners --- src/main_legacy_test.zig | 9 ++++++--- src/main_wpt.zig | 11 +++++++---- 2 files changed, 13 insertions(+), 7 deletions(-) diff --git a/src/main_legacy_test.zig b/src/main_legacy_test.zig index 52d6137c..78b85472 100644 --- a/src/main_legacy_test.zig +++ b/src/main_legacy_test.zig @@ -85,15 +85,18 @@ pub fn run(allocator: Allocator, file: []const u8, session: *lp.Session) !void { const page = try session.createPage(); defer session.removePage(); - const js_context = page.js; + var ls: lp.js.Local.Scope = undefined; + page.js.localScope(&ls); + defer ls.deinit(); + var try_catch: lp.js.TryCatch = undefined; - try_catch.init(js_context); + try_catch.init(&ls.local); defer try_catch.deinit(); try page.navigate(url, .{}); _ = session.wait(2000); - js_context.eval("testing.assertOk()", "testing.assertOk()") catch |err| { + ls.local.eval("testing.assertOk()", "testing.assertOk()") catch |err| { const caught = try_catch.caughtOrError(allocator, err); std.debug.print("{s}: test failure\nError: {f}\n", .{ file, caught }); return err; diff --git a/src/main_wpt.zig b/src/main_wpt.zig index 55159ff9..a70aacc6 100644 --- a/src/main_wpt.zig +++ b/src/main_wpt.zig @@ -118,20 +118,23 @@ fn run( _ = page.wait(2000); - const js_context = page.js; + var ls: lp.js.Local.Scope = undefined; + page.js.localScope(&ls); + defer ls.deinit(); + var try_catch: lp.js.TryCatch = undefined; - try_catch.init(js_context); + try_catch.init(&ls.local); defer try_catch.deinit(); // Check the final test status. - js_context.eval("report.status", "teststatus") catch |err| { + ls.local.eval("report.status", "teststatus") catch |err| { const caught = try_catch.caughtOrError(arena, err); err_out.* = caught.exception; return err; }; // return the detailed result. - const value = js_context.exec("report.log", "report") catch |err| { + const value = ls.local.exec("report.log", "report") catch |err| { const caught = try_catch.caughtOrError(arena, err); err_out.* = caught.exception; return err;