-
Notifications
You must be signed in to change notification settings - Fork 3.2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Support async iterable declarations in idlharness #24266
Support async iterable declarations in idlharness #24266
Conversation
Yes, please do! https://crbug.com/new , much appreciated :) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM with a potential addition.
Note that this closes #24174, and that you may want to remove some of the tests in https://github.com/web-platform-tests/wpt/blob/master/streams/readable-streams/async-iterator.any.js that become redundant with this, either as part of this PR or as a followup.
Done: Chromium bug #1097814. 🙂
Oh woops, I should probably have searched through the issues first. 😅 Thanks, I've updated the PR description so it will auto-close that issue.
I think only this test would be duplicated? The other tests are related to the prototype of the async iterator, whereas the tests in this PR are about the prototype of the async iterable interface. Most notably, the tests in this PR never actually create an async iterator. Perhaps we could add that, so we can also cover this test with the WebIDL harness tests. |
Agreed.
Yeah, although it's a bit tricky, since there's no guarantee that an async iterator will always be creatable. You'd probably want to add a factory mechanism similar to what exists for interfaces. Best left as a followup, I think. |
…ies() or keys() methods
I guess this will need admin-merging due to macOS infrastructure problems? @stephenmcgruer and @jgraham are already in this thread, so hopefully they can do that. |
MacOS failures are non-blocking, this needs Taskcluster to finish. Will keep an eye on that :) |
Both chrome-dev stability and firefox-nightly stability failed. Chrome-dev was layout-instability:
Firefox stability check timed out (common if there are lots of tests affected). The Chrome change looks like pre-existing flake, I would guess, so admin-merging this. |
As noted in #24266, this Streams test is now covered by the new async iterable tests from the WebIDL harness. Therefore, we can remove the Streams-specific test.
Currently, the idlharness incorrectly interprets async iterable declarations (as used in the Streams spec) as if they were regular iterables. This PR fixes that by adding separate testing logic for such async iterable declarations.
I also added tests for the
entries
,keys
,values
andforEach
methods of pair iterable declarations, to match the new tests for the methods on asynchronous pair iterables.Fixes #24174