Closed Bug 1513580 Opened 2 years ago Closed 2 years ago

when running ./jstests.py $JS non262, AttributeError: 'list' object has no attribute 'get'

Categories

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

defect
Not set
normal

Tracking

(firefox66 fixed)

RESOLVED FIXED
mozilla66
Tracking Status
firefox66 --- fixed

People

(Reporter: sfink, Assigned: sfink)

References

Details

Attachments

(2 files)

Traceback (most recent call last):
  File "./jstests.py", line 557, in <module>
    sys.exit(main())
  File "./jstests.py", line 518, in main
    test_count, test_gen = load_tests(options, requested_paths, excluded_paths)
  File "./jstests.py", line 439, in load_tests
    excluded_paths)
  File "./jstests.py", line 381, in load_wpt_tests
    exclude=excluded_paths)
  File "/home/sfink/src/mozilla/testing/web-platform/tests/tools/wptrunner/wptrunner/testloader.py", line 351, in __init__
    self.manifest.add_include(test_manifests, item)
  File "/home/sfink/src/mozilla/testing/web-platform/tests/tools/wptrunner/wptrunner/manifestinclude.py", line 141, in add_include
    return self._add_rule(test_manifests, url_prefix, "include")
  File "/home/sfink/src/mozilla/testing/web-platform/tests/tools/wptrunner/wptrunner/manifestinclude.py", line 101, in _add_rule
    for test in iterator(rel_path):
  File "/home/sfink/src/mozilla/testing/web-platform/tests/tools/manifest/manifest.py", line 225, in iterdir
    for path, tests in type_tests.iteritems():
  File "/home/sfink/src/mozilla/testing/web-platform/tests/tools/manifest/manifest.py", line 113, in iteritems
    self.load_all()
  File "/home/sfink/src/mozilla/testing/web-platform/tests/tools/manifest/manifest.py", line 149, in load_all
    for test in iterfilter(self.meta_filters, self.json_data.get(path, [])):
  File "/home/sfink/src/mozilla/testing/web-platform/tests/tools/manifest/manifest.py", line 31, in iterfilter
    for item in iter:
  File "./jstests.py", line 367, in filter_jsshell_tests
    if test[1].get("jsshell"):
AttributeError: 'list' object has no attribute 'get'
The 'test' array seems to vary for wpt tests. I was crashing on:

[u'/css/CSS2/floats-clear/float-replaced-width-006.xht', [[u'/css/CSS2/floats-clear/float-replaced-width-006-ref.xht', u'==']], {}]

but I also see eg

[u'/xhr/send-entity-body-empty.htm', {}]

It would probably be better to have the same shape for everything, but this patch papers over the issue.
Attachment #9030768 - Flags: review?(Ms2ger)
Only testharness tests should pass into that function; this was broken because the types=self.types argument was lost in <https://hg.mozilla.org/mozilla-central/rev/fe2d962a8ed2e722266a417df17f7085aeabad3b#l7.89>. Thanks for filing!
Depends on: 1497898
Flags: needinfo?(james)
Comment on attachment 9030768 [details] [diff] [review]
Fix jstests wpt problem

Let's fix the underlying bug.
Attachment #9030768 - Flags: review?(Ms2ger) → review-
Flags: needinfo?(james)
Pushed by james@hoppipolla.co.uk:
https://hg.mozilla.org/integration/autoland/rev/bfca182e8a80
Ensure we only load the wpt test types we requested, r=Ms2ger
Created web-platform-tests PR https://github.com/web-platform-tests/wpt/pull/14512 for changes under testing/web-platform/tests
https://hg.mozilla.org/mozilla-central/rev/bfca182e8a80
Status: ASSIGNED → RESOLVED
Closed: 2 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla66
You need to log in before you can comment on or make changes to this bug.