injectzone 0.0.2 copy "injectzone: ^0.0.2" to clipboard
injectzone: ^0.0.2 copied to clipboard

Injeczone is a simple and lightweight dependency injection library for Dart that allows you to override dependencies via your type.

injectzone

Injeczone is a simple and lightweight dependency injection library for Dart that allows you to override dependencies via your type.

Internally Injectzone uses zones and the zoneValues attribute to create or return injected dependencies.

Usage #

To use this package, add injectzone as a dependency in your pubspec.yaml file.

  1. Inject T dependency from builder function:

final deviceInfo = Injectzone().inject(() => DeviceInfoPlugin());

/// Note: [DeviceInfoPlugin] is a third party dependency
  1. Override T dependency with mock by ValueInjector during callback execution:
await Injectzone().withInjected([
  ValueInjector.inject<DeviceInfoPlugin>(mockDeviceInfoPlugin),
], () {
  ///... my test code
});

Features and bugs #

Please file feature requests and bugs at the issue tracker.

2
likes
150
points
23
downloads

Publisher

unverified uploader

Weekly Downloads

Injeczone is a simple and lightweight dependency injection library for Dart that allows you to override dependencies via your type.

Repository (GitHub)

Documentation

API reference

License

MIT (license)

More

Packages that depend on injectzone