blob: 847f7482f26fd24e902b6358b7b2fabec84c6e0c [file] [log] [blame]
// 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/widgets.dart';
import 'package:flutter_test/flutter_test.dart';
void main() {
testWidgets('Comparing coordinates', (WidgetTester tester) async {
final Key keyA = GlobalKey();
final Key keyB = GlobalKey();
await tester.pumpWidget(
Stack(
textDirection: TextDirection.ltr,
children: <Widget>[
Positioned(
top: 100.0,
left: 100.0,
child: SizedBox(
key: keyA,
width: 10.0,
height: 10.0,
),
),
Positioned(
left: 100.0,
top: 200.0,
child: SizedBox(
key: keyB,
width: 20.0,
height: 10.0,
),
),
],
),
);
final RenderBox boxA = tester.renderObject(find.byKey(keyA));
expect(boxA.localToGlobal(Offset.zero), equals(const Offset(100.0, 100.0)));
final RenderBox boxB = tester.renderObject(find.byKey(keyB));
expect(boxB.localToGlobal(Offset.zero), equals(const Offset(100.0, 200.0)));
expect(boxB.globalToLocal(const Offset(110.0, 205.0)), equals(const Offset(10.0, 5.0)));
});
}