cpd_David_und_Yusuf/test/flippingcards_test.dart

45 lines
1.6 KiB
Dart

import 'package:flutter/material.dart';
import 'package:flutter_test/flutter_test.dart';
import 'package:werwolf/models/player.dart';
import 'package:werwolf/models/role.dart';
import 'package:werwolf/screens/flippingcards.dart';
import 'package:werwolf/screens/gameboard.dart';
void main() {
group('FlippingCard Screen Tests', () {
List<Player> players = [
Player(name: 'Alice', role: Role.dorfbewohner, isDead: false),
Player(name: 'Bob', role: Role.werwolf, isDead: false),
// Add more players as needed
];
testWidgets('Displays player name on front of card', (WidgetTester tester) async {
await tester.pumpWidget(MaterialApp(home: FlipingCard(players: players)));
expect(find.text('Alice'), findsOneWidget);
expect(find.text('Klick um deine Rolle zu sehen!'), findsOneWidget);
});
testWidgets('Flips card to show role', (WidgetTester tester) async {
await tester.pumpWidget(MaterialApp(home: FlipingCard(players: players)));
await tester.tap(find.text('Klick um deine Rolle zu sehen!'));
await tester.pumpAndSettle();
expect(find.text('Dorfbewohner'), findsOneWidget);
});
testWidgets('Navigates to PlayerGridView on last player', (WidgetTester tester) async {
await tester.pumpWidget(MaterialApp(home: FlipingCard(players: players)));
await tester.tap(find.text('Nächster Spieler'));
await tester.pumpAndSettle();
await tester.tap(find.text('Spiel anfangen!'));
await tester.pumpAndSettle();
expect(find.byType(PlayerGridView), findsOneWidget);
});
});
}