diff --git a/test/navigation_test.dart b/test/navigation_test.dart deleted file mode 100644 index f887516..0000000 --- a/test/navigation_test.dart +++ /dev/null @@ -1,142 +0,0 @@ -import 'package:flutter/material.dart'; -import 'package:flutter_test/flutter_test.dart'; -import 'package:kochkomplize/recipedetailpage.dart'; -import 'package:kochkomplize/recipeformpage.dart'; -import 'package:kochkomplize/recipesoverview.dart'; - -void main() { - - testWidgets('Recipeformpage has form fields', (WidgetTester tester) async { - await tester.pumpWidget(MaterialApp(home: Recipeformpage())); - - // Prüfen Sie, ob die Formularfelder vorhanden sind - expect(find.byType(TextFormField), findsWidgets); - // Prüfen Sie den Speichern-Button - expect(find.byType(FloatingActionButton), findsOneWidget); - }); - - //todo: Firebase Mocking - - // testWidgets('RecipeDetailPage UI Test', (WidgetTester tester) async { - // await tester.pumpWidget(const MaterialApp( - // home: RecipeDetailPage( - // recipeId: 'testId', - // recipe: {'titel': 'Testrezept', 'beschreibung1': 'Beschreibung',}, - // ), - // )); - // - // // Überprüfen Sie, ob die Texte vorhanden sind - // expect(find.text('Testrezept'), findsOneWidget); - // expect(find.text('Beschreibung'), findsOneWidget); - // // Weitere UI-Elemente überprüfen - // }); - - // testWidgets('RecipeDetailPage displays static data', (WidgetTester tester) async { - // // Erstellen Sie Mock-Daten für das Rezept - // final Map mockRecipeData = { - // 'titel': 'Testrezept', - // 'beschreibung1': 'Beschreibung1', - // }; - // - // await tester.pumpWidget(MaterialApp( - // home: RecipeDetailPage(recipeId: '123', recipe: mockRecipeData), - // )); - // - // // Überprüfen Sie, ob alle UI-Elemente vorhanden sind - // expect(find.text('Testrezept'), findsOneWidget); - // expect(find.text('Beschreibung1'), findsOneWidget); - // }); - - - - - // testWidgets('Recipeformpage form fields and submit', (WidgetTester tester) async { - // await tester.pumpWidget(const MaterialApp(home: Recipeformpage())); - // - // // Eingabe im Titelfeld simulieren - // await tester.enterText(find.byType(TextFormField).at(0), 'Testrezept'); - // - // // 'Speichern'-Button drücken - // await tester.tap(find.byType(FloatingActionButton)); - // await tester.pump(); - // }); - - // Test für das Rendering der Rezeptdetails - // testWidgets('RecipeDetailPage renders recipe details', (WidgetTester tester) async { - // // Erstellen Sie Mock-Daten für das Rezept - // final Map recipeData = { - // 'titel': 'Testrezept', - // 'beschreibung1': 'Beschreibung1', - // 'beschreibung2': 'Beschreibung2', - // }; - // - // await tester.pumpWidget(MaterialApp( - // home: RecipeDetailPage(recipeId: '123', recipe: recipeData), - // )); - // - // // Überprüfen, ob alle UI-Elemente vorhanden sind - // expect(find.text('Testrezept'), findsOneWidget); - // expect(find.text('Beschreibung1'), findsOneWidget); - // expect(find.text('Beschreibung2'), findsOneWidget); - // }); - - // Test für die Löschfunktion - // testWidgets('RecipeDetailPage delete recipe', (WidgetTester tester) async { - // await tester.pumpWidget(const MaterialApp( - // home: RecipeDetailPage(recipeId: '123', recipe: {/* Mock-Daten */}), - // )); - // - // // Löschen-Button antippen und Dialog-Interaktion simulieren - // await tester.tap(find.byIcon(Icons.delete)); - // await tester.pump(); // Lädt den AlertDialog - // await tester.tap(find.text('Löschen')); - // await tester.pump(); // Simuliert das Drücken des Löschen-Buttons - // }); - - // testWidgets('RecipesOverview list and navigation', (WidgetTester tester) async { - // // Mocking der Firebase-Daten erforderlich - // - // await tester.pumpWidget(MaterialApp(home: RecipesOverview())); - // - // // Überprüfen, ob die Rezeptliste geladen wird - // expect(find.byType(ListView), findsOneWidget); - // - // // Simulieren des Antippens eines Rezepts - // tester.tap(find.byType(GestureDetector).first); - // await tester.pumpAndSettle(); - // - // // Überprüfen, ob die Navigation zum Detailbildschirm funktioniert - // expect(find.byType(RecipeDetailPage), findsOneWidget); - // }); - - - //Todo: Mocking für die Datenbank - // Initialisieren Sie Firebase vor dem Ausführen der Tests - // setUpAll(() async { - // await Firebase.initializeApp( - // options: DefaultFirebaseOptions.currentPlatform, - // ); - // }); - // testWidgets('Navigating from MyHomePage to Recipeformpage', (WidgetTester tester) async { - // // Starten Sie die App - // await tester.pumpWidget(const MyApp()); - // - // // Öffnen Sie das Menü, um die Navigation zu `RecipesOverview` zu simulieren - // await tester.tap(find.byIcon(Icons.menu)); - // await tester.pumpAndSettle(); // Warten, bis die Animation abgeschlossen ist - // - // // Tippen Sie auf das Menüelement 'Meine Rezepte' - // await tester.tap(find.text('Meine Rezepte')); - // await tester.pumpAndSettle(); // Warten, bis die neue Seite geladen ist - // - // // Überprüfen Sie, ob `RecipesOverview` angezeigt wird - // expect(find.byType(RecipesOverview), findsOneWidget); - // - // // Tippen Sie auf den FloatingActionButton, um `Recipeformpage` zu öffnen - // await tester.tap(find.byIcon(Icons.add)); - // await tester.pumpAndSettle(); // Warten, bis die neue Seite geladen ist - // - // // Überprüfen Sie, ob die `Recipeformpage` angezeigt wird - // expect(find.byType(Recipeformpage), findsOneWidget); - // }); -} \ No newline at end of file