diff --git a/.gitignore b/.gitignore index dbef116..d3602a5 100644 --- a/.gitignore +++ b/.gitignore @@ -19,3 +19,9 @@ doc/api/ *.js_ *.js.deps *.js.map +android +ios +linux +macos +windows +web \ No newline at end of file diff --git a/.idea/libraries/Dart_SDK.xml b/.idea/libraries/Dart_SDK.xml index bb89204..6e29844 100644 --- a/.idea/libraries/Dart_SDK.xml +++ b/.idea/libraries/Dart_SDK.xml @@ -1,17 +1,27 @@ - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + diff --git a/.idea/workspace.xml b/.idea/workspace.xml index 5b3388c..1b0dbca 100644 --- a/.idea/workspace.xml +++ b/.idea/workspace.xml @@ -1,5 +1,22 @@ + + + + + + + + + + + + @@ -13,24 +30,69 @@ - - - - - + + + + + + + + - - + - - - - + + + + + + + + + + + + + + + + + 1698843829715 + + + + + + + + - + \ No newline at end of file diff --git a/.metadata b/.metadata index fe11f50..009f8af 100644 --- a/.metadata +++ b/.metadata @@ -1,11 +1,11 @@ # This file tracks properties of this Flutter project. # Used by Flutter tool to assess capabilities and perform upgrades etc. # -# This file should be version controlled. +# This file should be version controlled and should not be manually edited. version: - revision: 2ad6cd72c040113b47ee9055e722606a490ef0da - channel: stable + revision: "efbf63d9c66b9f6ec30e9ad4611189aa80003d31" + channel: "stable" project_type: app @@ -13,26 +13,26 @@ project_type: app migration: platforms: - platform: root - create_revision: 2ad6cd72c040113b47ee9055e722606a490ef0da - base_revision: 2ad6cd72c040113b47ee9055e722606a490ef0da + create_revision: efbf63d9c66b9f6ec30e9ad4611189aa80003d31 + base_revision: efbf63d9c66b9f6ec30e9ad4611189aa80003d31 - platform: android - create_revision: 2ad6cd72c040113b47ee9055e722606a490ef0da - base_revision: 2ad6cd72c040113b47ee9055e722606a490ef0da + create_revision: efbf63d9c66b9f6ec30e9ad4611189aa80003d31 + base_revision: efbf63d9c66b9f6ec30e9ad4611189aa80003d31 - platform: ios - create_revision: 2ad6cd72c040113b47ee9055e722606a490ef0da - base_revision: 2ad6cd72c040113b47ee9055e722606a490ef0da + create_revision: efbf63d9c66b9f6ec30e9ad4611189aa80003d31 + base_revision: efbf63d9c66b9f6ec30e9ad4611189aa80003d31 - platform: linux - create_revision: 2ad6cd72c040113b47ee9055e722606a490ef0da - base_revision: 2ad6cd72c040113b47ee9055e722606a490ef0da + create_revision: efbf63d9c66b9f6ec30e9ad4611189aa80003d31 + base_revision: efbf63d9c66b9f6ec30e9ad4611189aa80003d31 - platform: macos - create_revision: 2ad6cd72c040113b47ee9055e722606a490ef0da - base_revision: 2ad6cd72c040113b47ee9055e722606a490ef0da + create_revision: efbf63d9c66b9f6ec30e9ad4611189aa80003d31 + base_revision: efbf63d9c66b9f6ec30e9ad4611189aa80003d31 - platform: web - create_revision: 2ad6cd72c040113b47ee9055e722606a490ef0da - base_revision: 2ad6cd72c040113b47ee9055e722606a490ef0da + create_revision: efbf63d9c66b9f6ec30e9ad4611189aa80003d31 + base_revision: efbf63d9c66b9f6ec30e9ad4611189aa80003d31 - platform: windows - create_revision: 2ad6cd72c040113b47ee9055e722606a490ef0da - base_revision: 2ad6cd72c040113b47ee9055e722606a490ef0da + create_revision: efbf63d9c66b9f6ec30e9ad4611189aa80003d31 + base_revision: efbf63d9c66b9f6ec30e9ad4611189aa80003d31 # User provided section diff --git a/how_old_am_i.iml b/how_old_am_i.iml index f66303d..4d723b3 100644 --- a/how_old_am_i.iml +++ b/how_old_am_i.iml @@ -8,10 +8,11 @@ + - + \ No newline at end of file diff --git a/pubspec.yaml b/pubspec.yaml index deb1798..39b2daa 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -17,7 +17,7 @@ dependencies: dev_dependencies: flutter_test: sdk: flutter - flutter_lints: ^2.0.0 + flutter_lints: ^3.0.0 flutter: uses-material-design: true diff --git a/test/widget_test.dart b/test/widget_test.dart new file mode 100644 index 0000000..cc888cb --- /dev/null +++ b/test/widget_test.dart @@ -0,0 +1,19 @@ + +import 'package:flutter/material.dart'; +import 'package:flutter_test/flutter_test.dart'; +import 'package:how_old_am_i/screens/home_screen.dart'; + +void main() { + testWidgets('MainScreen displays the form correctly', (tester) async { + await tester.pumpWidget(const MaterialApp(home: MainScreen())); + + final form = tester.widget
(find.byType(Form)); + expect(form, isNotNull); + + final textFields = tester.widgetList(find.byType(TextField)); + expect(textFields.length, 3); + + final textFieldTitles = textFields.map((textField) => textField.decoration?.hintText).toList(); + expect(textFieldTitles, ['Day', 'Month', 'Year']); + }); +} \ No newline at end of file