Click here to download the Blitz Browser!

WPT

wpt / dom / observable / tentative / observable-from.any.html

Spec: DOM ↗

Runs: Chrome 155.0.8041.0 (wpt@4a01b83e3, 2026-09-04) | Firefox 157.0a1 (wpt@e7122b73f, 2026-09-04) | Safari 251 preview (wpt@2c385f65e, 2026-09-04) | Ladybird 1.0-70fb3 (wpt@4a01b83e3, 2026-09-04) | Servo Servo 0.6 (wpt@7e3d005d7, 2026-09-03) | Blitz a50cb8971 (wpt@a95401e4e, 2026-09-03)

View on the Blitz WPT dashboard | Open test on wpt.live | wpt.fyi

ChromeFirefoxSafariLadybirdServoBlitz
Total46/480/480/480/480/48NOT RUN
SubtestChromeFirefoxSafariLadybirdServoBlitz
from(): Observable.from() is a functionPASSFAILFAILFAILFAIL
from(): Failed conversionsPASSFAILFAILFAILFAIL
from(): Given an observable, it returns that exact observablePASSFAILFAILFAILFAIL
from(): Given an arrayPASSFAILFAILFAILFAIL
from(): Iterable converts to ObservablePASSFAILFAILFAILFAIL
from(): [Symbol.iterator] side-effects (one observable)PASSFAILFAILFAILFAIL
from(): [Symbol.iterator] not callablePASSFAILFAILFAILFAIL
from(): [Symbol.iterator] not callable AFTER SUBSCRIBE throwsPASSFAILFAILFAILFAIL
from(): [Symbol.iterator] returns null AFTER SUBSCRIBE throwsPASSFAILFAILFAILFAIL
from(): [Symbol.iterator] is not cachedPASSFAILFAILFAILFAIL
from(): [Symbol.iterator] side-effects (many observables)PASSFAILFAILFAILFAIL
from(): [Symbol.iterator] next() throws errorPASSFAILFAILFAILFAIL
from(): Converts Promise to ObservablePASSFAILFAILFAILFAIL
from(): Converts rejected Promise to Observable. No `unhandledrejection` event when error is handled by subscriptionPASSFAILFAILFAILFAIL
from(): Rejections not handled by subscription are reported to the global, and still not sent as an unhandledrejection eventPASSFAILFAILFAILFAIL
from(): Observable that implements @@iterator protocol gets converted as an Observable, not iteratorPASSFAILFAILFAILFAIL
from(): Promise that implements @@iterator protocol gets converted as an iterable, not PromisePASSFAILFAILFAILFAIL
from(): Promise whose [Symbol.iterator] returns null converts as PromisePASSFAILFAILFAILFAIL
from(): Rethrows the error when Converting an object whose @@iterator method *getter* throws an errorPASSFAILFAILFAILFAIL
from(): Async iterable protocol null, converts as iteratorPASSFAILFAILFAILFAIL
from(): Asynchronous iterable conversionPASSFAILFAILFAILFAIL
from(): Asynchronous iterable multiple in-flight subscriptionsPASSFAILFAILFAILFAIL
from(): Sync iterable multiple in-flight subscriptionsPASSFAILFAILFAILFAIL
from(): Asynchronous generator conversion: can only be used oncePASSFAILFAILFAILFAIL
from(): Promise-wrapping semantics of IteratorResult interfacePASSFAILFAILFAILFAIL
from(): Errors thrown in Symbol.asyncIterator() are propagated synchronouslyPASSFAILFAILFAILFAIL
from(): Errors thrown in async iterator's next() GETTER are propagated in a microtaskFAILFAILFAILFAILFAIL
from(): Errors thrown in async iterator's next() are propagated in a microtaskPASSFAILFAILFAILFAIL
from(): Aborting sync iterable midway through iteration both stops iteration and invokes `IteratorRecord#return()PASSFAILFAILFAILFAIL
from(): Aborting async iterable midway through iteration both stops iteration and invokes `IteratorRecord#return()PASSFAILFAILFAILFAIL
from(): Sync iterable: `Iterator#return()` must return an Object, or an error is thrownPASSFAILFAILFAILFAIL
from(): Async iterable: `Iterator#return()` must return an Object, or a Promise rejects asynchronouslyPASSFAILFAILFAILFAIL
from(): Asynchronous iterable conversion, with synchronous iterable fallbackFAILFAILFAILFAILFAIL
from(): Generator finally block runs when subscription is abortedPASSFAILFAILFAILFAIL
from(): Generator finally block run when Observable completesPASSFAILFAILFAILFAIL
from(): Generator finally block run when Observable errorsPASSFAILFAILFAILFAIL
from(): Async generator finally block run when subscription is abortedPASSFAILFAILFAILFAIL
from(): Async generator finally block runs when Observable completesPASSFAILFAILFAILFAIL
from(): Async generator finally block run when Observable errorsPASSFAILFAILFAILFAIL
from(): Sync iterable: error thrown from IteratorRecord#return() can be synchronously caughtPASSFAILFAILFAILFAIL
from(): Async iterable: error thrown from IteratorRecord#return() is wrapped in rejected PromisePASSFAILFAILFAILFAIL
from(): Subscribing to an iterable Observable with an aborted signal does not call next()PASSFAILFAILFAILFAIL
from(): When iterable conversion aborts the subscription, next() is never calledPASSFAILFAILFAILFAIL
from(): Aborting an async iterable subscription stops subsequent next() calls, but old next() Promise reactions are web-observablePASSFAILFAILFAILFAIL
from(): Abort after complete does NOT call IteratorRecord#return()PASSFAILFAILFAILFAIL
Invalid async iterator protocol error is surfaced before Subscriber#signal is consultedPASSFAILFAILFAILFAIL
Invalid iterator protocol error is surfaced before Subscriber#signal is consultedPASSFAILFAILFAILFAIL
No error is reported when aborting a subscription to a sync iterator that has no `return()` implementationPASSFAILFAILFAILFAIL