wrapWithMockAppCubit function
Widget
wrapWithMockAppCubit(
- Widget child, {
- NetworkStatus networkStatus = NetworkStatus.connected,
- AppAuthStatus authStatus = AppAuthStatus.noauth,
- AppStatus appStatus = AppStatus.normal,
Helper to wrap widgets with MockAppCubit provider
This provides the AppCubit context required by widgets that use TappableAction or other components that depend on AppCubit.
Usage in tests:
Widget createTestWidget() {
return wrapWithMockAppCubit(
MaterialApp(
home: MyWidget(),
),
);
}
To test different network states:
await tester.pumpWidget(
wrapWithMockAppCubit(
MaterialApp(home: MyWidget()),
networkStatus: NetworkStatus.none,
),
);
Implementation
Widget wrapWithMockAppCubit(
Widget child, {
NetworkStatus networkStatus = NetworkStatus.connected,
AppAuthStatus authStatus = AppAuthStatus.noauth,
AppStatus appStatus = AppStatus.normal,
}) {
return BlocProvider<AppCubit>(
create: (_) => MockAppCubit(
networkStatus: networkStatus,
authStatus: authStatus,
appStatus: appStatus,
),
child: child,
);
}