Closed Bug 1750673 Opened 3 years ago Closed 3 years ago

wpt test runner throws IndexError on GeckoView

Categories

(Testing :: web-platform-tests, defect)

Unspecified
Android
defect

Tracking

(firefox99 fixed)

RESOLVED FIXED
99 Branch
Tracking Status
firefox99 --- fixed

People

(Reporter: m_kato, Assigned: jgraham)

Details

Attachments

(1 file)

When I run some wpt tests for screen orientation API, wpt test runner throws IndexError exception. I guess that do_testharness calls protocol.testharness.close_old_windows with invalid parameter. protocol seems to be MarionetteProtocol, but close_old_windows expects string such as http or https.

https://firefoxci.taskcluster-artifacts.net/LkgKkHlUQ-iqsDiy7GIO6A/0/public/logs/live_backing.log

[task 2022-01-18T01:38:14.498Z] 01:38:14     INFO - TEST-START | /screen-orientation/lock-sandboxed-iframe.html
[task 2022-01-18T01:38:14.513Z] 01:38:14     INFO - Changing harness_window to 479ced42-201d-48c3-81c8-5bcca45d1156
[task 2022-01-18T01:38:14.514Z] 01:38:14     INFO - Closing window c4d9265d-09b4-4e4f-8698-0bb6791cab74
[task 2022-01-18T01:38:14.553Z] 01:38:14     INFO - Changing harness_window to 479ced42-201d-48c3-81c8-5bcca45d1156
[task 2022-01-18T01:38:14.558Z] 01:38:14  WARNING - Traceback (most recent call last):
[task 2022-01-18T01:38:14.558Z] 01:38:14  WARNING -   File "/builds/worker/workspace/build/tests/web-platform/tests/tools/wptrunner/wptrunner/executors/executormarionette.py", line 815, in run_func
[task 2022-01-18T01:38:14.558Z] 01:38:14  WARNING -     self.result = True, self.func(self.protocol, self.url, self.timeout)
[task 2022-01-18T01:38:14.558Z] 01:38:14  WARNING -   File "/builds/worker/workspace/build/tests/web-platform/tests/tools/wptrunner/wptrunner/executors/executormarionette.py", line 919, in do_testharness
[task 2022-01-18T01:38:14.558Z] 01:38:14  WARNING -     parent_window = protocol.testharness.close_old_windows(protocol)
[task 2022-01-18T01:38:14.558Z] 01:38:14  WARNING -   File "/builds/worker/workspace/build/tests/web-platform/tests/tools/wptrunner/wptrunner/executors/executormarionette.py", line 207, in close_old_windows
[task 2022-01-18T01:38:14.558Z] 01:38:14  WARNING -     self.load_runner(url_protocol)
[task 2022-01-18T01:38:14.558Z] 01:38:14  WARNING -   File "/builds/worker/workspace/build/tests/web-platform/tests/tools/wptrunner/wptrunner/executors/executormarionette.py", line 162, in load_runner
[task 2022-01-18T01:38:14.558Z] 01:38:14  WARNING -     url = urljoin(self.parent.executor.server_url(url_protocol), "/testharness_runner.html")
[task 2022-01-18T01:38:14.558Z] 01:38:14  WARNING -   File "/builds/worker/workspace/build/tests/web-platform/tests/tools/wptrunner/wptrunner/executors/base.py", line 321, in server_url
[task 2022-01-18T01:38:14.559Z] 01:38:14  WARNING -     port=self.server_config["ports"][protocol][0])
[task 2022-01-18T01:38:14.559Z] 01:38:14  WARNING - IndexError: list index out of range
Flags: needinfo?(james)

This method is supposed to take either "http" or "https" to decide
which scheme to use when loading the runner window. But we were
accidentially passing in the marionette Protocol object instead. This
didn't usually affect things, since we don't usually have to reload
the runner.

In practice we could probably make load_runner work without a
protocol (aka scheme) argument these days, since we don't need it to
be same-origin with the test window, as we did previously. But that's
a bigger change.

Assignee: nobody → james
Status: NEW → ASSIGNED

Looks like you're right and we're just passing in the wrong kind of argument here. We didn't notice before because this only happens in exceptional circumstances. The attached patch should fix it (and seems to at least run tests locally).

Flags: needinfo?(james)
Pushed by james@hoppipolla.co.uk: https://hg.mozilla.org/integration/autoland/rev/2fa192e70c3f Pass the right kind of protocol into close_old_windows, r=whimboo
Created web-platform-tests PR https://github.com/web-platform-tests/wpt/pull/32985 for changes under testing/web-platform/tests
Status: ASSIGNED → RESOLVED
Closed: 3 years ago
Resolution: --- → FIXED
Target Milestone: --- → 99 Branch
Upstream PR merged by moz-wptsync-bot
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: