snapshot of https://github.com/flutter/samples.git (main, 2026-09-16; blobs > 131072B omitted)
Some checks failed
Main Branch CI / Test Flutter beta on ubuntu-latest (push) Has been skipped
Main Branch CI / Test Flutter stable on ubuntu-latest (push) Has been skipped
Main Branch CI / Test Flutter beta on macos-latest (push) Has been cancelled
Main Branch CI / Test Flutter stable on macos-latest (push) Has been cancelled
Some checks failed
Main Branch CI / Test Flutter beta on ubuntu-latest (push) Has been skipped
Main Branch CI / Test Flutter stable on ubuntu-latest (push) Has been skipped
Main Branch CI / Test Flutter beta on macos-latest (push) Has been cancelled
Main Branch CI / Test Flutter stable on macos-latest (push) Has been cancelled
This commit is contained in:
99
testing_app/integration_test/app_test.dart
Normal file
99
testing_app/integration_test/app_test.dart
Normal file
@@ -0,0 +1,99 @@
|
||||
// Copyright 2020 The Flutter team. All rights reserved.
|
||||
// Use of this source code is governed by a BSD-style license that can be
|
||||
// found in the LICENSE file.
|
||||
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:flutter_test/flutter_test.dart';
|
||||
import 'package:integration_test/integration_test.dart';
|
||||
import 'package:testing_app/main.dart';
|
||||
|
||||
void main() {
|
||||
group('Testing App Driver Tests', () {
|
||||
IntegrationTestWidgetsFlutterBinding.ensureInitialized();
|
||||
|
||||
testWidgets('Finding an item in the list', (tester) async {
|
||||
await tester.pumpWidget(const TestingApp());
|
||||
|
||||
// Create variables for finders that are used multiple times.
|
||||
final itemFinder = find.byKey(const ValueKey('text_25'));
|
||||
|
||||
// Scroll until the item to be found appears.
|
||||
await tester.scrollUntilVisible(itemFinder, 500.0);
|
||||
|
||||
// Check if the item contains the correct text.
|
||||
expect(tester.widget<Text>(itemFinder).data, 'Item 25');
|
||||
});
|
||||
|
||||
testWidgets('Testing IconButtons', (tester) async {
|
||||
await tester.pumpWidget(const TestingApp());
|
||||
|
||||
// Create a finder for the icon.
|
||||
final iconFinder = find.byKey(const ValueKey('icon_0'));
|
||||
|
||||
// Tap on the icon.
|
||||
await tester.tap(iconFinder);
|
||||
|
||||
// Wait 1 second for the SnackBar to be displayed
|
||||
await tester.pumpAndSettle(const Duration(seconds: 1));
|
||||
|
||||
// Verify if appropriate message appears.
|
||||
expect(find.text('Added to favorites.'), findsOneWidget);
|
||||
|
||||
// Tap on the icon again.
|
||||
await tester.tap(iconFinder);
|
||||
|
||||
// Wait 1 second for the SnackBar to be displayed
|
||||
await tester.pumpAndSettle(const Duration(seconds: 1));
|
||||
|
||||
// Verify if appropriate message appears.
|
||||
expect(find.text('Removed from favorites.'), findsOneWidget);
|
||||
});
|
||||
|
||||
testWidgets('Verifying whether item gets added to favorites', (
|
||||
tester,
|
||||
) async {
|
||||
await tester.pumpWidget(const TestingApp());
|
||||
|
||||
// Add item to favorites.
|
||||
await tester.tap(find.byKey(const ValueKey('icon_5')));
|
||||
await tester.pumpAndSettle();
|
||||
|
||||
// Tap on the favorites button on the AppBar.
|
||||
// The Favorites List should appear.
|
||||
await tester.tap(find.text('Favorites'));
|
||||
await tester.pumpAndSettle();
|
||||
|
||||
// Check if the added item has appeared in the list.
|
||||
expect(
|
||||
tester
|
||||
.widget<Text>(find.byKey(const ValueKey('favorites_text_5')))
|
||||
.data,
|
||||
equals('Item 5'),
|
||||
);
|
||||
});
|
||||
|
||||
testWidgets('Testing remove button', (tester) async {
|
||||
await tester.pumpWidget(const TestingApp());
|
||||
|
||||
// Add item to favorites.
|
||||
await tester.tap(find.byKey(const ValueKey('icon_5')));
|
||||
await tester.pumpAndSettle();
|
||||
|
||||
// Navigate to Favorites screen.
|
||||
await tester.tap(find.text('Favorites'));
|
||||
await tester.pumpAndSettle();
|
||||
|
||||
// Tap on the remove icon.
|
||||
await tester.tap(find.byKey(const ValueKey('remove_icon_5')));
|
||||
|
||||
// Wait 1 second for the SnackBar to be displayed
|
||||
await tester.pumpAndSettle(const Duration(seconds: 1));
|
||||
|
||||
// Verify if it disappears.
|
||||
expect(find.text('Item 5'), findsNothing);
|
||||
|
||||
// Verify if appropriate message appears.
|
||||
expect(find.text('Removed from favorites.'), findsOneWidget);
|
||||
});
|
||||
});
|
||||
}
|
||||
Reference in New Issue
Block a user