ciriousjoker / fake_firebase_remote_config

Flutter package: Fake Firebase Remote Config for use during Flutter unit & widget tests.
https://pub.dev/packages/fake_firebase_remote_config
BSD 2-Clause "Simplified" License
3 stars 4 forks source link
fake firebase firebaseremoteconfig flutter flutter-test flutter-tests mock remoteconfig

Fake Firebase Remote Config

pub package

Fakes to write unit tests for Firebase Remote Config. Instantiate a FakeRemoteConfig, then pass it around your project to replace RemoteConfig.instance. This fake acts like RemoteConfig except it will load mocked data instead.

Usage

A simple usage example

import 'package:fake_firebase_remote_config/fake_firebase_remote_config.dart';

void main() async {
  final config = FakeRemoteConfig();
  await config.setDefaults({
    // ...
  });

  config.loadMockData({
    // ...
  });

  await config.fetchAndActivate();
}

This config object needs to replace the real RemoteConfig.instance during testing. You can do this for example with Riverpod or by doing something like this:

await tester.pumpWidget(
  MaterialApp(
    title: 'RemoteConfig Example',
    home: MyApp(overrideRemoteConfig: config),
  ),
);

Missing functionality

Compatibility table

firebase_remote_config fake_firebase_remote_config
>=0.9.0-dev.0 <4.0.0 1.0.x
>=4.0.0 <5.0.0 2.0.x
>=4.0.0 <5.0.0 2.1.x

Last updated for firebase_remote_config: 4.2.5.

Features and bugs

Please file feature requests and bugs at the issue tracker.