小编Vin*_*lin的帖子

如何正确覆盖自动生成的 Riverpod NotifierProvider 进行测试?

import 'package:flutter/material.dart';
import 'package:flutter_test/flutter_test.dart';
import 'package:flutter_riverpod/flutter_riverpod.dart';
import 'package:riverpod_annotation/riverpod_annotation.dart';

part 'fake_test.g.dart';

@riverpod
class TheNumber extends _$TheNumber {
  @override
  int build() {
    return 42;
  }
}

class TheNumberWidget extends ConsumerWidget {
  const TheNumberWidget({super.key});

  @override
  Widget build(BuildContext context, WidgetRef ref) {
    final theNumber = ref.watch(theNumberProvider);

    return Text('TheNumber: $theNumber');
  }
}

@riverpod
class FakeNumber extends _$FakeNumber {
  @override
  int build() {
    return 43;
  }
}

void main() {
  group(
    'TheNumber Tests',
    () {
      testWidgets(
        'Testing TheNumber',
        (tester) async {
          await tester.pumpWidget(
            ProviderScope(
              overrides: [ …
Run Code Online (Sandbox Code Playgroud)

testing dart flutter riverpod

1
推荐指数
1
解决办法
852
查看次数

标签 统计

dart ×1

flutter ×1

riverpod ×1

testing ×1