HttpOverrides class Null safety

This class facilitates overriding HttpClient with a mock implementation. It should be extended by another class in client code with overrides that construct a mock implementation. The implementation in this base class defaults to the actual HttpClient implementation. For example:

// An implementation of the HttpClient interface
class MyHttpClient implements HttpClient {
  MyHttpClient(SecurityContext? c);

  @override
  noSuchMethod(Invocation invocation) {
    // your implementation here
  }
}

void main() {
  HttpOverrides.runZoned(() {
    // Operations will use MyHttpClient instead of the real HttpClient
    // implementation whenever HttpClient is used.
  }, createHttpClient: (SecurityContext? c) => MyHttpClient(c));
}

Constructors

HttpOverrides()

Properties

hashCode int
The hash code for this object.
read-only, inherited
runtimeType Type
A representation of the runtime type of the object.
read-only, inherited

Methods

createHttpClient(SecurityContext? context) HttpClient
Returns a new HttpClient using the given context.
findProxyFromEnvironment(Uri url, Map<String, String>? environment) String
Resolves the proxy server to be used for HTTP connections.
noSuchMethod(Invocation invocation) → dynamic
Invoked when a non-existent method or property is accessed.
inherited
toString() String
A string representation of this object.
inherited

Operators

operator ==(Object other) bool
The equality operator.
inherited

Static Properties

current HttpOverrides?
read-only
global HttpOverrides?
The HttpOverrides to use in the root Zone.
write-only

Static Methods

runWithHttpOverrides<R>(R body(), HttpOverrides overrides) → R
Runs body in a fresh Zone using the overrides found in overrides.
runZoned<R>(R body(), {HttpClient createHttpClient(SecurityContext?)?, String findProxyFromEnvironment(Uri uri, Map<String, String>? environment)?}) → R
Runs body in a fresh Zone using the provided overrides.