d869fe93e2
Make pulling both events from the stream more explicit and ensure that different errors appear when each event doesn't arrive in time. There are several issues with the previous approach: - `.skip(1)` actually returns a new stream that will skip the first event. - Calling `.timeout()` on the new stream returns yet another stream with the timeout. - It appeared like each event should have a timeout but the ordering means both the skip and first event actually shared a single timeout. Change-Id: I60062634a35424455c03b6e1778cc56bbdeb1716 Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/294080 Reviewed-by: Mark Zhou <markzipan@google.com> Commit-Queue: Nicholas Shahan <nshahan@google.com>