Add test for scaffold.0.dart and scaffold.2.dart (#148166)

Contributes to https://github.com/flutter/flutter/issues/130459

It adds test for
- `examples/api/lib/material/scaffold/scaffold.0.dart`
- `examples/api/lib/material/scaffold/scaffold.2.dart`

It also modifies the `scaffold.1_test.dart` because the only difference with scaffold 0 is the background color, so I figured the test should include it
This commit is contained in:
Valentin Vignal 2024-05-23 16:50:18 +08:00 committed by GitHub
parent 3beeed4929
commit 84876e58ce
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
4 changed files with 55 additions and 2 deletions

View File

@ -351,9 +351,7 @@ final Set<String> _knownMissingTests = <String>{
'examples/api/test/material/scaffold/scaffold.drawer.0_test.dart',
'examples/api/test/material/scaffold/scaffold_messenger.of.0_test.dart',
'examples/api/test/material/scaffold/scaffold_messenger.0_test.dart',
'examples/api/test/material/scaffold/scaffold.0_test.dart',
'examples/api/test/material/scaffold/scaffold_state.show_bottom_sheet.0_test.dart',
'examples/api/test/material/scaffold/scaffold.2_test.dart',
'examples/api/test/material/scaffold/scaffold_messenger_state.show_material_banner.0_test.dart',
'examples/api/test/material/scaffold/scaffold_messenger.of.1_test.dart',
'examples/api/test/material/scaffold/scaffold_messenger_state.show_snack_bar.0_test.dart',

View File

@ -0,0 +1,25 @@
// Copyright 2014 The Flutter Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
import 'package:flutter/material.dart';
import 'package:flutter_api_samples/material/scaffold/scaffold.0.dart' as example;
import 'package:flutter_test/flutter_test.dart';
void main() {
testWidgets('The count should be incremented when the floating action button is tapped', (WidgetTester tester) async {
await tester.pumpWidget(
const example.ScaffoldExampleApp(),
);
expect(find.widgetWithText(AppBar, 'Sample Code'), findsOne);
expect(find.widgetWithIcon(FloatingActionButton, Icons.add), findsOne);
expect(find.text('You have pressed the button 0 times.'), findsOne);
for (int i = 1; i <= 5; i++) {
await tester.tap(find.byType(FloatingActionButton));
await tester.pump();
expect(find.text('You have pressed the button $i times.'), findsOne);
}
});
}

View File

@ -21,5 +21,8 @@ void main() {
await tester.pump();
expect(find.text('You have pressed the button $i times.'), findsOne);
}
final Scaffold scaffold = tester.firstWidget<Scaffold>(find.byType(Scaffold));
expect(scaffold.backgroundColor, Colors.blueGrey.shade200);
});
}

View File

@ -0,0 +1,27 @@
// Copyright 2014 The Flutter Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
import 'package:flutter/material.dart';
import 'package:flutter_api_samples/material/scaffold/scaffold.2.dart' as example;
import 'package:flutter_test/flutter_test.dart';
void main() {
testWidgets('The count should be incremented when the centered floating action button is tapped', (WidgetTester tester) async {
await tester.pumpWidget(
const example.ScaffoldExampleApp(),
);
expect(find.widgetWithText(AppBar, 'Sample Code'), findsOne);
expect(find.widgetWithIcon(FloatingActionButton, Icons.add), findsOne);
expect(find.text('You have pressed the button 0 times.'), findsOne);
expect(find.byType(BottomAppBar), findsOne);
expect(tester.getCenter(find.byType(FloatingActionButton)).dx, 400);
for (int i = 1; i <= 5; i++) {
await tester.tap(find.byType(FloatingActionButton));
await tester.pump();
expect(find.text('You have pressed the button $i times.'), findsOne);
}
});
}