||Start monitoring all incoming update events about network requests and wait until
a complete info about all requests is received. (We wait for the timings info
explicitly, because that's always the last piece of information that is received.)
This method is designed to wait for network requests that are issued during a page
load, when retrieving page resources (scripts, styles, images). It has certain
assumptions that can make it unsuitable for other types of network communication:
- it waits for at least one network request to start and finish before returning
- it waits only for request that were issued after it was called. Requests that are
already in mid-flight will be ignored.
- the request start and end times are overlapping. If a new request starts a moment
after the previous one was finished, the wait will be ended in the "interim"
We might need to allow a range of requests because even though we run with
cache disabled, different loads can still be coalesced, and whether they're
coalesced or not depends on timing.
@returns a promise that resolves when the wait is done.