armyknife_riverpodx_test 1.0.0 copy "armyknife_riverpodx_test: ^1.0.0" to clipboard
armyknife_riverpodx_test: ^1.0.0 copied to clipboard

armyknife_riverpodx test support library.

armyknife_riverpodxを使用したコードの Unit Test 作成を支援するテストライブラリである。 ProviderContainer の非同期削除機能、依存関係の自動解決、テスト用のプロバイダー管理機能を提供する。

Features #

  • 自動的な ProviderContainer 管理: テスト用の ProviderContainer を自動作成・削除
  • 非同期削除サポート: テスト終了時に ProviderContainer を適切に非同期削除
  • 依存関係の自動解決: プロバイダーの依存グラフを構築し、準備完了状態にする
  • AutoDisposeProvider 対応: 自動的に listen を行い、適切にプロバイダーを管理
  • テスト用ヘルパー: 簡単にプロバイダーからインスタンスを取得できる拡張機能

Getting started #

pubspec.yamlの dev_dependencies に以下を追加する:

dev_dependencies:
  armyknife_riverpodx_test: ^1.0.0

Usage #

テスト用の ProviderContainer を作成し、プロバイダーをテストする:

import 'package:armyknife_riverpodx_test/armyknife_riverpodx_test.dart';
import 'package:flutter_test/flutter_test.dart';

void main() {
  group('Provider tests', () {
    test('should create provider container with async disposal', () async {
      final container = ProviderContainerTest.create();

      // プロバイダーの値を取得
      final value = container.testGet(myProvider);
      expect(value, isNotNull);

      // テスト終了時に自動的にdisposeAsync()が呼ばれる
    });

    test('should ready provider with dependencies', () async {
      final container = ProviderContainerTest.create();

      // 依存関係を解決してプロバイダーを準備完了状態にする
      final service = await container.testReady(myServiceProvider);
      expect(service.isReady, isTrue);
    });
  });
}

Additional information #

このパッケージはarmyknife_riverpodxを使用したアプリケーションの Unit Test 作成を簡単にするために作られた。 特に ProviderContainer の非同期削除機能により、テスト間でのリソースリークを防ぐことができる。 バグ報告や機能要求はGitHubで受け付けている。

0
likes
80
points
40
downloads

Publisher

verified publishereaglesakura.com

Weekly Downloads

armyknife_riverpodx test support library.

Documentation

API reference

License

MIT (license)

Dependencies

armyknife_riverpodx, flutter, flutter_test

More

Packages that depend on armyknife_riverpodx_test