Skip to content

Instantly share code, notes, and snippets.

@felipecastrosales
Created December 26, 2022 17:34
Show Gist options
  • Save felipecastrosales/4229d003452059fea8e21c82b41d15d9 to your computer and use it in GitHub Desktop.
Save felipecastrosales/4229d003452059fea8e21c82b41d15d9 to your computer and use it in GitHub Desktop.
my overlay ok
import 'dart:io';
import 'package:dialog/overlayimage/overlay.dart';
import 'package:dialog/show_overlay_method.dart';
import 'package:flutter/material.dart';
import 'package:flutter_test/flutter_test.dart';
import 'package:network_image_mock/network_image_mock.dart';
void main() {
TestWidgetsFlutterBinding.ensureInitialized();
HttpOverrides.global = null;
testWidgets('showOverlayMethod navigates to MyOverlayImage', (tester) async {
final myOverlay = MyOverlayImage(
foregroundColor: Colors.red.withOpacity(.5),
);
await mockNetworkImagesFor(
() => _createWidget(
tester: tester,
route: myOverlay,
),
);
final buttonFinder = find.byType(TextButton);
expect(buttonFinder, findsOneWidget);
await tester.tap(buttonFinder);
await tester.pumpAndSettle();
// verify(() => mockObserver.didPush(any(), any())).called(1);
// expect(find.byType(MyOverlayImage), findsOneWidget);
});
}
Future<void> _createWidget({
required WidgetTester tester,
required ModalRoute<void>? route,
}) async {
await tester.pumpWidget(
MaterialApp(
onGenerateRoute: (settings) {
return route;
},
home: Builder(
builder: (context) => TextButton(
onPressed: () => showOverlayMethod(context),
child: const Text('Show Overlay'),
),
),
),
);
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment