flutter/examples/api/test/rendering/growth_direction.0_test.dart
Kate Lovett dd7d4b9521
Fix docs and error messages for scroll directions + sample code (#123819)
Fix docs and error messages for scroll directions + sample code
2023-03-31 23:46:59 +00:00

43 lines
1.8 KiB
Dart

// 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/rendering.dart';
import 'package:flutter_api_samples/rendering/growth_direction/growth_direction.0.dart' as example;
import 'package:flutter_test/flutter_test.dart';
void main() {
testWidgets('Example app has GrowthDirections represented', (WidgetTester tester) async {
await tester.pumpWidget(
const example.ExampleApp(),
);
final RenderViewport viewport = tester.renderObject(find.byType(Viewport));
expect(find.text('AxisDirection.down'), findsNWidgets(2));
expect(find.text('Axis.vertical'), findsNWidgets(2));
expect(find.text('GrowthDirection.forward'), findsOneWidget);
expect(find.text('GrowthDirection.reverse'), findsOneWidget);
expect(find.byIcon(Icons.arrow_upward_rounded), findsNWidgets(2));
expect(find.byIcon(Icons.arrow_downward_rounded), findsNWidgets(2));
expect(viewport.axisDirection, AxisDirection.down);
expect(viewport.anchor, 0.5);
expect(viewport.center, isNotNull);
await tester.tap(
find.byWidgetPredicate((Widget widget) {
return widget is Radio<AxisDirection> && widget.value == AxisDirection.up;
})
);
await tester.pumpAndSettle();
expect(find.text('AxisDirection.up'), findsNWidgets(2));
expect(find.text('Axis.vertical'), findsNWidgets(2));
expect(find.text('GrowthDirection.forward'), findsOneWidget);
expect(find.text('GrowthDirection.reverse'), findsOneWidget);
expect(find.byIcon(Icons.arrow_upward_rounded), findsNWidgets(2));
expect(find.byIcon(Icons.arrow_downward_rounded), findsNWidgets(2));
expect(viewport.axisDirection, AxisDirection.up);
});
}