Closed Bug 1832814 Opened 1 years ago Closed 1 years ago

Intermittent /webdriver/tests/close_window/user_prompts.py | test_accept[capabilities0-confirm] - webdriver.error.JavascriptErrorException: javascript error (500): JavaScriptError: Document was unloaded

Categories

(Remote Protocol :: Marionette, defect, P5)

defect

Tracking

(Not tracked)

RESOLVED DUPLICATE of bug 1816538

People

(Reporter: intermittent-bug-filer, Unassigned)

Details

(Keywords: intermittent-failure)

Filed by: sstanca [at] mozilla.com
Parsed log: https://treeherder.mozilla.org/logviewer?job_id=415510578&repo=mozilla-beta
Full log: https://firefox-ci-tc.services.mozilla.com/api/queue/v1/task/IfW_GScPR4-MKKRdk2Z32A/runs/0/artifacts/public/logs/live_backing.log


[task 2023-05-12T10:12:54.849Z] 10:12:54     INFO - TEST-PASS | /webdriver/tests/close_window/user_prompts.py | test_accept[capabilities0-alert] 
[task 2023-05-12T10:12:54.849Z] 10:12:54     INFO - TEST-UNEXPECTED-FAIL | /webdriver/tests/close_window/user_prompts.py | test_accept[capabilities0-confirm] - webdriver.error.JavascriptErrorException: javascript error (500): JavaScriptError: Document was unloaded
[task 2023-05-12T10:12:54.849Z] 10:12:54     INFO - check_user_prompt_closed_without_exception = <function check_user_prompt_closed_without_exception.<locals>.check_user_prompt_closed_without_exception at 0x00000170DE572AF0>
[task 2023-05-12T10:12:54.849Z] 10:12:54     INFO - dialog_type = 'confirm'
[task 2023-05-12T10:12:54.850Z] 10:12:54     INFO - 
[task 2023-05-12T10:12:54.850Z] 10:12:54     INFO -     @pytest.mark.capabilities({"unhandledPromptBehavior": "accept"})
[task 2023-05-12T10:12:54.850Z] 10:12:54     INFO -     @pytest.mark.parametrize("dialog_type", ["alert", "confirm", "prompt"])
[task 2023-05-12T10:12:54.850Z] 10:12:54     INFO -     def test_accept(check_user_prompt_closed_without_exception, dialog_type):
[task 2023-05-12T10:12:54.850Z] 10:12:54     INFO -         # retval not testable for confirm and prompt because window is gone
[task 2023-05-12T10:12:54.850Z] 10:12:54     INFO - >       check_user_prompt_closed_without_exception(dialog_type, None)
[task 2023-05-12T10:12:54.850Z] 10:12:54     INFO - 
[task 2023-05-12T10:12:54.850Z] 10:12:54     INFO - check_user_prompt_closed_without_exception = <function check_user_prompt_closed_without_exception.<locals>.check_user_prompt_closed_without_exception at 0x00000170DE572AF0>
[task 2023-05-12T10:12:54.850Z] 10:12:54     INFO - dialog_type = 'confirm'
[task 2023-05-12T10:12:54.850Z] 10:12:54     INFO - 
[task 2023-05-12T10:12:54.850Z] 10:12:54     INFO - tests\web-platform\tests\webdriver\tests\close_window\user_prompts.py:77: 
[task 2023-05-12T10:12:54.850Z] 10:12:54     INFO - _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
[task 2023-05-12T10:12:54.850Z] 10:12:54     INFO - tests\web-platform\tests\webdriver\tests\close_window\user_prompts.py:20: in check_user_prompt_closed_without_exception
[task 2023-05-12T10:12:54.850Z] 10:12:54     INFO -     create_dialog(dialog_type, text=dialog_type)
[task 2023-05-12T10:12:54.850Z] 10:12:54     INFO -         create_dialog = <function create_dialog.<locals>.create_dialog at 0x00000170DE572790>
[task 2023-05-12T10:12:54.850Z] 10:12:54     INFO -         dialog_type = 'confirm'
[task 2023-05-12T10:12:54.850Z] 10:12:54     INFO -         new_handle = '5ebf86e7-6a70-4eff-bc82-1920dac8e25d'
[task 2023-05-12T10:12:54.850Z] 10:12:54     INFO -         original_handle = '63277d01-bcec-4f46-9c89-3982426cb9f7'
[task 2023-05-12T10:12:54.851Z] 10:12:54     INFO -         retval     = None
[task 2023-05-12T10:12:54.851Z] 10:12:54     INFO -         session    = <Session 90667502-d7d8-41ba-9d82-9a031a26421f>
[task 2023-05-12T10:12:54.851Z] 10:12:54     INFO - tests\web-platform\tests\webdriver\tests\support\fixtures_http.py:117: in create_dialog
[task 2023-05-12T10:12:54.851Z] 10:12:54     INFO -     session.execute_async_script("""
[task 2023-05-12T10:12:54.851Z] 10:12:54     INFO -         dialog_type = 'confirm'
[task 2023-05-12T10:12:54.851Z] 10:12:54     INFO -         session    = <Session 90667502-d7d8-41ba-9d82-9a031a26421f>
[task 2023-05-12T10:12:54.851Z] 10:12:54     INFO -         text       = 'confirm'
[task 2023-05-12T10:12:54.851Z] 10:12:54     INFO - tests\web-platform\tests\tools\webdriver\webdriver\client.py:22: in inner
[task 2023-05-12T10:12:54.851Z] 10:12:54     INFO -     return func(self, *args, **kwargs)
[task 2023-05-12T10:12:54.851Z] 10:12:54     INFO -         args       = ('\n'
[task 2023-05-12T10:12:54.851Z] 10:12:54     INFO -  '            let dialog_type = arguments[0];\n'
[task 2023-05-12T10:12:54.851Z] 10:12:54     INFO -  '            let text = arguments[1];\n'
[task 2023-05-12T10:12:54.851Z] 10:12:54     INFO -  '\n'
[task 2023-05-12T10:12:54.851Z] 10:12:54     INFO -  '            setTimeout(function() {\n'
[task 2023-05-12T10:12:54.851Z] 10:12:54     INFO -  "              if (dialog_type == 'prompt') {\n"
[task 2023-05-12T10:12:54.851Z] 10:12:54     INFO -  "                window.dialog_return_value = window[dialog_type](text, '');\n"
[task 2023-05-12T10:12:54.851Z] 10:12:54     INFO -  '              } else {\n'
[task 2023-05-12T10:12:54.851Z] 10:12:54     INFO -  '                window.dialog_return_value = window[dialog_type](text);\n'
[task 2023-05-12T10:12:54.851Z] 10:12:54     INFO -  '              }\n'
[task 2023-05-12T10:12:54.851Z] 10:12:54     INFO -  '            }, 0);\n'
[task 2023-05-12T10:12:54.852Z] 10:12:54     INFO -  '            ',)
[task 2023-05-12T10:12:54.852Z] 10:12:54     INFO -         func       = <function Session.execute_async_script at 0x00000170DE45E160>
[task 2023-05-12T10:12:54.852Z] 10:12:54     INFO -         kwargs     = {'args': ('confirm', 'confirm')}
[task 2023-05-12T10:12:54.852Z] 10:12:54     INFO -         self       = <Session 90667502-d7d8-41ba-9d82-9a031a26421f>
[task 2023-05-12T10:12:54.852Z] 10:12:54     INFO -         session    = <Session 90667502-d7d8-41ba-9d82-9a031a26421f>
[task 2023-05-12T10:12:54.852Z] 10:12:54     INFO - tests\web-platform\tests\tools\webdriver\webdriver\client.py:790: in execute_async_script
[task 2023-05-12T10:12:54.852Z] 10:12:54     INFO -     return self.send_session_command("POST", "execute/async", body)
[task 2023-05-12T10:12:54.852Z] 10:12:54     INFO -         args       = ('confirm', 'confirm')
[task 2023-05-12T10:12:54.852Z] 10:12:54     INFO -         body       = {'args': ('confirm', 'confirm'),
[task 2023-05-12T10:12:54.852Z] 10:12:54     INFO -  'script': '\n'
[task 2023-05-12T10:12:54.852Z] 10:12:54     INFO -            '            let dialog_type = arguments[0];\n'
[task 2023-05-12T10:12:54.852Z] 10:12:54     INFO -            '            let text = arguments[1];\n'
[task 2023-05-12T10:12:54.852Z] 10:12:54     INFO -            '\n'
[task 2023-05-12T10:12:54.852Z] 10:12:54     INFO -            '            setTimeout(function() {\n'
[task 2023-05-12T10:12:54.852Z] 10:12:54     INFO -            "              if (dialog_type == 'prompt') {\n"
[task 2023-05-12T10:12:54.852Z] 10:12:54     INFO -            '                window.dialog_return_value = '
[task 2023-05-12T10:12:54.852Z] 10:12:54     INFO -            "window[dialog_type](text, '');\n"
[task 2023-05-12T10:12:54.852Z] 10:12:54     INFO -            '              } else {\n'
[task 2023-05-12T10:12:54.852Z] 10:12:54     INFO -            '                window.dialog_return_value = '
[task 2023-05-12T10:12:54.852Z] 10:12:54     INFO -            'window[dialog_type](text);\n'
[task 2023-05-12T10:12:54.853Z] 10:12:54     INFO -            '              }\n'
[task 2023-05-12T10:12:54.853Z] 10:12:54     INFO -            '            }, 0);\n'
[task 2023-05-12T10:12:54.853Z] 10:12:54     INFO -            '            '}
[task 2023-05-12T10:12:54.853Z] 10:12:54     INFO -         script     = ('\n'
[task 2023-05-12T10:12:54.853Z] 10:12:54     INFO -  '            let dialog_type = arguments[0];\n'
[task 2023-05-12T10:12:54.853Z] 10:12:54     INFO -  '            let text = arguments[1];\n'
[task 2023-05-12T10:12:54.853Z] 10:12:54     INFO -  '\n'
[task 2023-05-12T10:12:54.853Z] 10:12:54     INFO -  '            setTimeout(function() {\n'
[task 2023-05-12T10:12:54.853Z] 10:12:54     INFO -  "              if (dialog_type == 'prompt') {\n"
[task 2023-05-12T10:12:54.853Z] 10:12:54     INFO -  "                window.dialog_return_value = window[dialog_type](text, '');\n"
[task 2023-05-12T10:12:54.853Z] 10:12:54     INFO -  '              } else {\n'
[task 2023-05-12T10:12:54.853Z] 10:12:54     INFO -  '                window.dialog_return_value = window[dialog_type](text);\n'
[task 2023-05-12T10:12:54.853Z] 10:12:54     INFO -  '              }\n'
[task 2023-05-12T10:12:54.853Z] 10:12:54     INFO -  '            }, 0);\n'
[task 2023-05-12T10:12:54.853Z] 10:12:54     INFO -  '            ')
[task 2023-05-12T10:12:54.853Z] 10:12:54     INFO -         self       = <Session 90667502-d7d8-41ba-9d82-9a031a26421f>
[task 2023-05-12T10:12:54.853Z] 10:12:54     INFO - tests\web-platform\tests\tools\webdriver\webdriver\client.py:658: in send_session_command
[task 2023-05-12T10:12:54.853Z] 10:12:54     INFO -     return self.send_command(method, url, body, timeout)
[task 2023-05-12T10:12:54.853Z] 10:12:54     INFO -         body       = {'args': ('confirm', 'confirm'),
[task 2023-05-12T10:12:54.853Z] 10:12:54     INFO -  'script': '\n'
[task 2023-05-12T10:12:54.853Z] 10:12:54     INFO -            '            let dialog_type = arguments[0];\n'
[task 2023-05-12T10:12:54.854Z] 10:12:54     INFO -            '            let text = arguments[1];\n'
[task 2023-05-12T10:12:54.854Z] 10:12:54     INFO -            '\n'
[task 2023-05-12T10:12:54.854Z] 10:12:54     INFO -            '            setTimeout(function() {\n'
[task 2023-05-12T10:12:54.854Z] 10:12:54     INFO -            "              if (dialog_type == 'prompt') {\n"
[task 2023-05-12T10:12:54.854Z] 10:12:54     INFO -            '                window.dialog_return_value = '
[task 2023-05-12T10:12:54.854Z] 10:12:54     INFO -            "window[dialog_type](text, '');\n"
[task 2023-05-12T10:12:54.854Z] 10:12:54     INFO -            '              } else {\n'
[task 2023-05-12T10:12:54.854Z] 10:12:54     INFO -            '                window.dialog_return_value = '
[task 2023-05-12T10:12:54.854Z] 10:12:54     INFO -            'window[dialog_type](text);\n'
[task 2023-05-12T10:12:54.854Z] 10:12:54     INFO -            '              }\n'
[task 2023-05-12T10:12:54.855Z] 10:12:54     INFO -            '            }, 0);\n'
[task 2023-05-12T10:12:54.855Z] 10:12:54     INFO -            '            '}
[task 2023-05-12T10:12:54.855Z] 10:12:54     INFO -         method     = 'POST'
[task 2023-05-12T10:12:54.855Z] 10:12:54     INFO -         self       = <Session 90667502-d7d8-41ba-9d82-9a031a26421f>
[task 2023-05-12T10:12:54.855Z] 10:12:54     INFO -         timeout    = None
[task 2023-05-12T10:12:54.855Z] 10:12:54     INFO -         uri        = 'execute/async'
[task 2023-05-12T10:12:54.855Z] 10:12:54     INFO -         url        = 'session/90667502-d7d8-41ba-9d82-9a031a26421f/execute/async'
[task 2023-05-12T10:12:54.855Z] 10:12:54     INFO - _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
[task 2023-05-12T10:12:54.855Z] 10:12:54     INFO - 
[task 2023-05-12T10:12:54.855Z] 10:12:54     INFO - self = <Session 90667502-d7d8-41ba-9d82-9a031a26421f>, method = 'POST'
[task 2023-05-12T10:12:54.855Z] 10:12:54     INFO - url = 'session/90667502-d7d8-41ba-9d82-9a031a26421f/execute/async'
[task 2023-05-12T10:12:54.855Z] 10:12:54     INFO - body = {'args': ('confirm', 'confirm'), 'script': '\n            let dialog_type = arguments[0];\n            let text = argu...           window.dialog_return_value = window[dialog_type](text);\n              }\n            }, 0);\n            '}
[task 2023-05-12T10:12:54.855Z] 10:12:54     INFO - timeout = None
[task 2023-05-12T10:12:54.855Z] 10:12:54     INFO - 
[task 2023-05-12T10:12:54.855Z] 10:12:54     INFO -     def send_command(self, method, url, body=None, timeout=None):
[task 2023-05-12T10:12:54.855Z] 10:12:54     INFO -         """
[task 2023-05-12T10:12:54.855Z] 10:12:54     INFO -         Send a command to the remote end and validate its success.
[task 2023-05-12T10:12:54.855Z] 10:12:54     INFO -     
[task 2023-05-12T10:12:54.855Z] 10:12:54     INFO -         :param method: HTTP method to use in request.
[task 2023-05-12T10:12:54.855Z] 10:12:54     INFO -         :param uri: "Command part" of the HTTP request URL,
[task 2023-05-12T10:12:54.855Z] 10:12:54     INFO -             e.g. `window/rect`.
[task 2023-05-12T10:12:54.856Z] 10:12:54     INFO -         :param body: Optional body of the HTTP request.
[task 2023-05-12T10:12:54.856Z] 10:12:54     INFO -     
[task 2023-05-12T10:12:54.856Z] 10:12:54     INFO -         :return: `None` if the HTTP response body was empty, otherwise
[task 2023-05-12T10:12:54.856Z] 10:12:54     INFO -             the `value` field returned after parsing the response
[task 2023-05-12T10:12:54.856Z] 10:12:54     INFO -             body as JSON.
[task 2023-05-12T10:12:54.856Z] 10:12:54     INFO -     
[task 2023-05-12T10:12:54.856Z] 10:12:54     INFO -         :raises error.WebDriverException: If the remote end returns
[task 2023-05-12T10:12:54.856Z] 10:12:54     INFO -             an error.
[task 2023-05-12T10:12:54.856Z] 10:12:54     INFO -         :raises ValueError: If the response body does not contain a
[task 2023-05-12T10:12:54.856Z] 10:12:54     INFO -             `value` key.
[task 2023-05-12T10:12:54.856Z] 10:12:54     INFO -         """
[task 2023-05-12T10:12:54.856Z] 10:12:54     INFO -     
[task 2023-05-12T10:12:54.856Z] 10:12:54     INFO -         response = self.transport.send(
[task 2023-05-12T10:12:54.856Z] 10:12:54     INFO -             method, url, body,
[task 2023-05-12T10:12:54.856Z] 10:12:54     INFO -             encoder=protocol.Encoder, decoder=protocol.Decoder,
[task 2023-05-12T10:12:54.856Z] 10:12:54     INFO -             session=self, timeout=timeout)
[task 2023-05-12T10:12:54.856Z] 10:12:54     INFO -     
[task 2023-05-12T10:12:54.856Z] 10:12:54     INFO -         if response.status != 200:
[task 2023-05-12T10:12:54.856Z] 10:12:54     INFO -             err = error.from_response(response)
[task 2023-05-12T10:12:54.856Z] 10:12:54     INFO -     
[task 2023-05-12T10:12:54.856Z] 10:12:54     INFO -             if isinstance(err, error.InvalidSessionIdException):
[task 2023-05-12T10:12:54.856Z] 10:12:54     INFO -                 # The driver could have already been deleted the session.
[task 2023-05-12T10:12:54.857Z] 10:12:54     INFO -                 self.session_id = None
[task 2023-05-12T10:12:54.857Z] 10:12:54     INFO -     
[task 2023-05-12T10:12:54.857Z] 10:12:54     INFO - >           raise err
[task 2023-05-12T10:12:54.857Z] 10:12:54     INFO - E           webdriver.error.JavascriptErrorException: javascript error (500): JavaScriptError: Document was unloaded
[task 2023-05-12T10:12:54.857Z] 10:12:54     INFO - E           
[task 2023-05-12T10:12:54.857Z] 10:12:54     INFO - E           Remote-end stacktrace:
[task 2023-05-12T10:12:54.857Z] 10:12:54     INFO - E           
[task 2023-05-12T10:12:54.857Z] 10:12:54     INFO - E           RemoteError@chrome://remote/content/shared/RemoteError.sys.mjs:8:8
[task 2023-05-12T10:12:54.857Z] 10:12:54     INFO - E           WebDriverError@chrome://remote/content/shared/webdriver/Errors.sys.mjs:183:5
[task 2023-05-12T10:12:54.857Z] 10:12:54     INFO - E           JavaScriptError@chrome://remote/content/shared/webdriver/Errors.sys.mjs:362:5
[task 2023-05-12T10:12:54.857Z] 10:12:54     INFO - E           evaluate.sandbox/promise</unloadHandler<@chrome://remote/content/marionette/evaluate.sys.mjs:121:20
[task 2023-05-12T10:12:54.857Z] 10:12:54     INFO - E           openPromptSync@resource://gre/modules/Prompter.sys.mjs:1042:17
[task 2023-05-12T10:12:54.857Z] 10:12:54     INFO - E           confirm@resource://gre/modules/Prompter.sys.mjs:1380:10
[task 2023-05-12T10:12:54.857Z] 10:12:54     INFO - E           @moz-nullprincipal:{268bbbf6-b7db-473c-b57f-4793cc54a448}:10:65
[task 2023-05-12T10:12:54.857Z] 10:12:54     INFO - 
[task 2023-05-12T10:12:54.857Z] 10:12:54     INFO - body       = {'args': ('confirm', 'confirm'),
[task 2023-05-12T10:12:54.857Z] 10:12:54     INFO -  'script': '\n'
[task 2023-05-12T10:12:54.857Z] 10:12:54     INFO -            '            let dialog_type = arguments[0];\n'
[task 2023-05-12T10:12:54.857Z] 10:12:54     INFO -            '            let text = arguments[1];\n'
[task 2023-05-12T10:12:54.858Z] 10:12:54     INFO -            '\n'
[task 2023-05-12T10:12:54.858Z] 10:12:54     INFO -            '            setTimeout(function() {\n'
[task 2023-05-12T10:12:54.858Z] 10:12:54     INFO -            "              if (dialog_type == 'prompt') {\n"
[task 2023-05-12T10:12:54.858Z] 10:12:54     INFO -            '                window.dialog_return_value = '
[task 2023-05-12T10:12:54.858Z] 10:12:54     INFO -            "window[dialog_type](text, '');\n"
[task 2023-05-12T10:12:54.858Z] 10:12:54     INFO -            '              } else {\n'
[task 2023-05-12T10:12:54.858Z] 10:12:54     INFO -            '                window.dialog_return_value = '
[task 2023-05-12T10:12:54.858Z] 10:12:54     INFO -            'window[dialog_type](text);\n'
[task 2023-05-12T10:12:54.858Z] 10:12:54     INFO -            '              }\n'
[task 2023-05-12T10:12:54.858Z] 10:12:54     INFO -            '            }, 0);\n'
[task 2023-05-12T10:12:54.858Z] 10:12:54     INFO -            '            '}
[task 2023-05-12T10:12:54.858Z] 10:12:54     INFO - err        = <JavascriptErrorException http_status=500>
[task 2023-05-12T10:12:54.858Z] 10:12:54     INFO - method     = 'POST'
[task 2023-05-12T10:12:54.858Z] 10:12:54     INFO - response   = <Response status=500 error=<JavascriptErrorException http_status=500>>
[task 2023-05-12T10:12:54.858Z] 10:12:54     INFO - self       = <Session 90667502-d7d8-41ba-9d82-9a031a26421f>
[task 2023-05-12T10:12:54.858Z] 10:12:54     INFO - timeout    = None
[task 2023-05-12T10:12:54.858Z] 10:12:54     INFO - url        = 'session/90667502-d7d8-41ba-9d82-9a031a26421f/execute/async'
[task 2023-05-12T10:12:54.858Z] 10:12:54     INFO - 
[task 2023-05-12T10:12:54.858Z] 10:12:54     INFO - tests\web-platform\tests\tools\webdriver\webdriver\client.py:622: JavascriptErrorException
[task 2023-05-12T10:12:54.870Z] 10:12:54     INFO - 
[task 2023-05-12T10:12:54.870Z] 10:12:54     INFO - TEST-PASS | /webdriver/tests/close_window/user_prompts.py | test_accept[capabilities0-prompt]
Status: NEW → RESOLVED
Closed: 1 years ago
Duplicate of bug: 1737282
Resolution: --- → DUPLICATE
Duplicate of bug: 1816538
No longer duplicate of bug: 1737282
You need to log in before you can comment on or make changes to this bug.