Skip to content

Commit fe6c261

Browse files
Merge pull request #8 from sbis04/master
Added Splash Screen test & Tutorial Screen test
2 parents c862a0f + d5ea194 commit fe6c261

File tree

3 files changed

+60
-1
lines changed

3 files changed

+60
-1
lines changed

lib/screens/SplashScreen.dart

Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,21 +11,32 @@ class SplashScreen extends StatefulWidget {
1111
}
1212

1313
class _SplashScreenState extends State<SplashScreen> {
14+
15+
Timer _timer;
16+
1417
void initState() {
1518
super.initState();
1619

1720
loadData();
1821
}
22+
1923

2024
Future<Timer> loadData() async {
21-
return new Timer(Duration(seconds: 2), onDoneLoading);
25+
_timer = new Timer(Duration(seconds: 2), onDoneLoading);
26+
return _timer;
2227
}
2328

2429
onDoneLoading() async {
2530
Navigator.of(context)
2631
.pushNamedAndRemoveUntil('/home', (Route<dynamic> route) => false);
2732
}
2833

34+
@override
35+
void dispose() {
36+
_timer.cancel();
37+
super.dispose();
38+
}
39+
2940
@override
3041
Widget build(BuildContext context) {
3142
return Scaffold(

test/splash_test.dart

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
import 'package:flutter/material.dart';
2+
import 'package:flutter_test/flutter_test.dart';
3+
4+
import '../lib/screens/SplashScreen.dart';
5+
6+
void main() {
7+
Widget makeTestableWidget({Widget child}) {
8+
return MaterialApp(
9+
home: child,
10+
);
11+
}
12+
13+
testWidgets('Splash screen test', (WidgetTester tester) async {
14+
SplashScreen splashScreen = SplashScreen();
15+
16+
await tester.pumpWidget(makeTestableWidget(child: splashScreen));
17+
18+
expect(find.text('Numbers'), findsOneWidget);
19+
print('Found the first text widget.');
20+
21+
print('\nSplash screen test successful.');
22+
});
23+
}

test/tutorial_test.dart

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
import 'package:flutter_test/flutter_test.dart';
2+
import 'package:flutter/material.dart';
3+
4+
import '../lib/screens/TurorialScreen.dart';
5+
6+
//Match the target shown at the top by adding one or more number blocks.
7+
8+
void main() {
9+
Widget makeTestableWidget({Widget child}) {
10+
return MaterialApp(
11+
home: child,
12+
);
13+
}
14+
15+
testWidgets('Tutorial screen test', (WidgetTester tester) async {
16+
TurorialScreen turorialScreen = TurorialScreen();
17+
18+
await tester.pumpWidget(makeTestableWidget(child: turorialScreen));
19+
20+
expect(find.text('Match the target shown at the top by adding one or more number blocks.'), findsOneWidget);
21+
print('Found the text widget.');
22+
23+
print('\nTutorial screen test successful.');
24+
});
25+
}

0 commit comments

Comments
 (0)