feat(netxlite): construct types with custom UnderlyingNetwork #1197
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This diff introduces the netxlite.Netx type. This type depends on a model.UnderlyingNetwork. When the underlying network is nil, using this type is equivalent to using netxlite toplevel functions directly.
To simplify testing this diff, let's move the netem->netxlite UnderlyingNetworkAdapter from netemx and let's use netem to write tests, so we can have confidence specifically about the most common use case of overriding the underlying network.
Originally part of #1185.
The reference issue is ooni/probe#2461.