-
Notifications
You must be signed in to change notification settings - Fork 599
Description
timer.js:
export default {
async test(ctrl, env, ctx) {
console.log('hi')
const t0 = Date.now()
await new Promise((accept) => setTimeout(accept, 100))
const t1 = Date.now()
console.log(t1 - t0)
await new Promise((accept) => setTimeout(accept, 100))
const t2 = Date.now()
console.log(t2 - t1)
}
};timer.capnp:
using Workerd = import "/workerd/workerd.capnp";
const config :Workerd.Config = (
services = [
(name = "main", worker = .mainWorker),
],
);
const mainWorker :Workerd.Worker = (
modules = [
(name = "./timer.js", esModule = embed "./timer.js"),
],
compatibilityDate = "2026-02-05",
);
result:
% seq 3 | xargs -I{} ./node_modules/.bin/workerd test workerd-time/timer.capnp
workerd/server/server.c++:5876: debug: [ TEST ] main
hi
1
101
workerd/server/server.c++:5890: debug: [ PASS ] main (114.754ms)
workerd/server/server.c++:5876: debug: [ TEST ] main
hi
42
104
workerd/server/server.c++:5890: debug: [ PASS ] main (160.761ms)
workerd/server/server.c++:5876: debug: [ TEST ] main
hi
82
101
workerd/server/server.c++:5890: debug: [ PASS ] main (191.839ms)I would have expected first setTimeout to delay for about 100ms, not 1ms.
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels