description

# HttpOverrides class abstract

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.
  no setterinherited
runtimeType → Type
  A representation of the runtime type of the object.
  no setterinherited

## 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 nonexistent 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?
  no setter
global ← HttpOverrides?
  The HttpOverrides to use in the root Zone.
  no getter

## 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.