From 52f6c1a4fb34d165f8c5961962d32546b23e4827 Mon Sep 17 00:00:00 2001 From: Sergey Chernyshev Date: Thu, 25 Apr 2024 04:22:05 +0200 Subject: [PATCH] test_runner: fix invalid timer call Signed-off-by: Erick Wendel PR-URL: https://github.com/nodejs/node/pull/49477 Reviewed-By: Chemi Atlow Reviewed-By: Benjamin Gruenbaum Reviewed-By: Moshe Atlow --- .../internal/test_runner/mock/mock_timers.js | 2 +- .../test/parallel/test-runner-mock-timers.js | 39 ++++++++++++------- 2 files changed, 25 insertions(+), 16 deletions(-) diff --git a/graal-nodejs/lib/internal/test_runner/mock/mock_timers.js b/graal-nodejs/lib/internal/test_runner/mock/mock_timers.js index 40956e6d2ec..27f553af147 100644 --- a/graal-nodejs/lib/internal/test_runner/mock/mock_timers.js +++ b/graal-nodejs/lib/internal/test_runner/mock/mock_timers.js @@ -371,7 +371,7 @@ class MockTimers { ObjectDefineProperty( nodeTimers, 'setTimeout', - this.#realSetTimeout, + this.#realTimersSetTimeout, ); ObjectDefineProperty( nodeTimers, diff --git a/graal-nodejs/test/parallel/test-runner-mock-timers.js b/graal-nodejs/test/parallel/test-runner-mock-timers.js index c740aa3b495..3a220309133 100644 --- a/graal-nodejs/test/parallel/test-runner-mock-timers.js +++ b/graal-nodejs/test/parallel/test-runner-mock-timers.js @@ -46,8 +46,7 @@ describe('Mock Timers Test Suite', () => { code: 'ERR_INVALID_ARG_VALUE', }); }); - - it('should check that propertyDescriptor gets back after reseting timers', (t) => { + it('should check that propertyDescriptor gets back after resetting timers', (t) => { const getDescriptor = (ctx, fn) => Object.getOwnPropertyDescriptor(ctx, fn); const getCurrentTimersDescriptors = () => { const timers = [ @@ -71,26 +70,36 @@ describe('Mock Timers Test Suite', () => { nodeTimersPromises: nodeTimersPromisesDescriptors, }; }; - const before = getCurrentTimersDescriptors(); + + const originalDescriptors = getCurrentTimersDescriptors(); + t.mock.timers.enable(); const during = getCurrentTimersDescriptors(); t.mock.timers.reset(); const after = getCurrentTimersDescriptors(); - assert.deepStrictEqual( - before, - after, - ); + for (const env in originalDescriptors) { + for (const prop in originalDescriptors[env]) { + const originalDescriptor = originalDescriptors[env][prop]; + const afterDescriptor = after[env][prop]; - assert.notDeepStrictEqual( - before, - during, - ); + assert.deepStrictEqual( + originalDescriptor, + afterDescriptor, + ); - assert.notDeepStrictEqual( - during, - after, - ); + assert.notDeepStrictEqual( + originalDescriptor, + during[env][prop], + ); + + assert.notDeepStrictEqual( + during[env][prop], + after[env][prop], + ); + + } + } }); it('should reset all timers when calling .reset function', (t) => {