flutter/packages/flutter/test/widgets/annotated_region_test.dart
Michael Goderbauer 473fa38f77
Reland "Remove references to BindingBase.window (#122119 & #122341)" (#122412)
Reland "Remove references to BindingBase.window (#122119 & #122341)"
2023-03-14 16:48:07 +00:00

43 lines
1.4 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/rendering.dart';
import 'package:flutter/widgets.dart';
import 'package:flutter_test/flutter_test.dart';
void main() {
testWidgets('provides a value to the layer tree', (WidgetTester tester) async {
await tester.pumpWidget(
const AnnotatedRegion<int>(
value: 1,
child: SizedBox(width: 100.0, height: 100.0),
),
);
final List<Layer> layers = tester.layers;
final AnnotatedRegionLayer<int> layer = layers.whereType<AnnotatedRegionLayer<int>>().first;
expect(layer.value, 1);
});
testWidgets('provides a value to the layer tree in a particular region', (WidgetTester tester) async {
await tester.pumpWidget(
Transform.translate(
offset: const Offset(25.0, 25.0),
child: const AnnotatedRegion<int>(
value: 1,
child: SizedBox(width: 100.0, height: 100.0),
),
),
);
int? result = RendererBinding.instance.renderView.debugLayer!.find<int>(Offset(
10.0 * tester.view.devicePixelRatio,
10.0 * tester.view.devicePixelRatio,
));
expect(result, null);
result = RendererBinding.instance.renderView.debugLayer!.find<int>(Offset(
50.0 * tester.view.devicePixelRatio,
50.0 * tester.view.devicePixelRatio,
));
expect(result, 1);
});
}