36 lines
1.1 KiB
Dart
36 lines
1.1 KiB
Dart
import 'package:flutter_test/flutter_test.dart';
|
|
import 'package:pong/main.dart';
|
|
import 'package:mockito/mockito.dart'
|
|
|
|
|
|
class MockGameScreen extends Mock implements GameScreen {}
|
|
|
|
void main() {
|
|
test('moveRacket', () {});
|
|
|
|
test('moveBall updates ball position and handles collisions', () {
|
|
final gameScreenState = GameScreenState();
|
|
|
|
// Setze den Ball in eine Ausgangsposition
|
|
gameScreenState.ballPositionX = 50;
|
|
gameScreenState.ballPositionY = 50;
|
|
|
|
// Bewege den Ball nach rechts und überprüfe die Position
|
|
gameScreenState.moveBall(1.0);
|
|
expect(gameScreenState.ballPositionX, greaterThan(50));
|
|
|
|
// Bewege den Ball nach unten und überprüfe die Position
|
|
gameScreenState.moveBall(1.0);
|
|
expect(gameScreenState.ballPositionY, greaterThan(50));
|
|
|
|
// Teste die Kollision mit den Wänden
|
|
gameScreenState.ballPositionX = 0;
|
|
gameScreenState.ballSpeedX = -1.0;
|
|
gameScreenState.moveBall(1.0);
|
|
expect(gameScreenState.ballSpeedX,
|
|
greaterThan(0)); // Die Richtung des Balls sollte sich ändern
|
|
|
|
// Füge weitere Tests für Kollisionen hinzu
|
|
});
|
|
}
|