From 4b2e89afe085c355b76667e70df104565d3c86a8 Mon Sep 17 00:00:00 2001 From: Euclid Ye Date: Thu, 29 Jan 2026 04:40:52 +0000 Subject: [PATCH] Add promise test for script timeout `None` Signed-off-by: Euclid Ye --- .../classic/execute_async_script/promise.py | 30 +++++++++++++++++++ .../tests/classic/execute_script/promise.py | 26 ++++++++++++++++ 2 files changed, 56 insertions(+) diff --git a/webdriver/tests/classic/execute_async_script/promise.py b/webdriver/tests/classic/execute_async_script/promise.py index d726d0d7128303..c0547b263d90dc 100644 --- a/webdriver/tests/classic/execute_async_script/promise.py +++ b/webdriver/tests/classic/execute_async_script/promise.py @@ -116,3 +116,33 @@ def test_promise_reject_timeout(session): resolve(promise); """) assert_error(response, "script timeout") + + +def test_promise_resolve_timeout_none(session): + session.timeouts.script = None + response = execute_async_script(session, """ + let resolve = arguments[0]; + let promise = new Promise( + (resolve) => setTimeout( + () => resolve('foobar'), + 200 + ) + ); + resolve(promise); + """) + assert_success(response, "foobar") + + +def test_promise_reject_timeout_none(session): + session.timeouts.script = None + response = execute_async_script(session, """ + let resolve = arguments[0]; + let promise = new Promise( + (resolve, reject) => setTimeout( + () => reject(new Error('my error')), + 200 + ) + ); + resolve(promise); + """) + assert_error(response, "javascript error") diff --git a/webdriver/tests/classic/execute_script/promise.py b/webdriver/tests/classic/execute_script/promise.py index c206674baefc75..1744b630799faf 100644 --- a/webdriver/tests/classic/execute_script/promise.py +++ b/webdriver/tests/classic/execute_script/promise.py @@ -100,3 +100,29 @@ def test_promise_reject_timeout(session): ); """) assert_error(response, "script timeout") + + +def test_promise_resolve_timeout_none(session): + session.timeouts.script = None + response = execute_script(session, """ + return new Promise( + (resolve) => setTimeout( + () => resolve('foobar'), + 200 + ) + ); + """) + assert_success(response, "foobar") + + +def test_promise_reject_timeout_none(session): + session.timeouts.script = None + response = execute_script(session, """ + return new Promise( + (resolve, reject) => setTimeout( + () => reject(new Error('my error')), + 200 + ) + ); + """) + assert_error(response, "javascript error")