testserver: Block dialing until connection is up
When waiting for spawned servers to become healthy, we use a context
timeout and then first DialContext()
and second invoke its health
service. DialContext()
will return immediately though without waiting
for the connection to come up if it's not executed via WithBlock()
.
While this isn't much of a problem given that we use WaitForReady()
in
the call to the health service, this moves errors caused by a failure to
establish the connection from dialing to invoking the RPC call. As a
consequence, errors can be misleading and we may have less information
available.
Improve this by using a blocking dial.
I'll mark this MR as closing #3835 (closed). While that's likely not the case, we'd at least get more information. And if we do have more information, then we can reopen with additional details.