http_cyclic_mocks 0.0.4 copy "http_cyclic_mocks: ^0.0.4" to clipboard
http_cyclic_mocks: ^0.0.4 copied to clipboard

A Simple and lightweight Dart library for mocking/overriding HTTP responses with Dio. In this library you can enqueue multiple responses for a single route/api endpoint.

example/example.dart

import 'package:dio/dio.dart';
import 'package:http_cyclic_mocks/http_cyclic_mocks.dart';

void main() async {
  final dio = Dio();
  final mockHttpClient = CyclicMockClient(dio);

  mockHttpClient.addMockResponses('/route1', [
    MockResponse(data: {'message': 'Not Found'}, statusCode: 200),
    MockResponse(data: {'message': 'Route 1 - SUCCESS'}, statusCode: 200),
  ]);

  mockHttpClient.addMockResponses('/route2', [
    MockResponse(data: {'message': 'Error Response'}, statusCode: 400),
    MockResponse(data: {'message': 'Route 2 - SUCCESS'}, statusCode: 200),
    MockResponse(data: {'message': 'ERROR - Route 2'}, statusCode: 404),
  ]);

  for (int i = 0; i < 6; i++) {
    final response1 = await dio.get('/route1');
    print(response1.data);

    try {
      final response2 = await dio.get('/route2');
      print(response2.data);
    } catch (e) {
      print(e);
    }
  }
}
2
likes
160
points
31
downloads

Publisher

verified publishercodefright.com

Weekly Downloads

A Simple and lightweight Dart library for mocking/overriding HTTP responses with Dio. In this library you can enqueue multiple responses for a single route/api endpoint.

Repository (GitHub)

Documentation

API reference

License

BSD-3-Clause (license)

Dependencies

dio

More

Packages that depend on http_cyclic_mocks