mirror of
https://github.com/flutter/flutter.git
synced 2026-02-20 02:29:02 +08:00
Instead of triggering layout synchronously during AppView construction, we now schedule the initial layout using a magic bootstrapping function. TBR=ianh@google.com Review URL: https://codereview.chromium.org/1172123003.
32 lines
1.2 KiB
Dart
32 lines
1.2 KiB
Dart
// Copyright 2015 The Chromium 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 '../resources/third_party/unittest/unittest.dart';
|
|
import '../resources/unit.dart';
|
|
import '../resources/display_list.dart';
|
|
import 'dart:sky' as sky;
|
|
import 'package:sky/framework/rendering/box.dart';
|
|
import 'package:sky/framework/rendering/object.dart';
|
|
|
|
void main() {
|
|
initUnit();
|
|
|
|
test("should size to render view", () {
|
|
RenderSizedBox root = new RenderSizedBox(
|
|
child: new RenderDecoratedBox(
|
|
decoration: new BoxDecoration(backgroundColor: const sky.Color(0xFF00FF00))
|
|
)
|
|
);
|
|
TestView renderView = new TestView(child: root);
|
|
renderView.attach();
|
|
renderView.rootConstraints = new ViewConstraints(width: sky.view.width, height: sky.view.height);
|
|
renderView.scheduleInitialLayout();
|
|
RenderObject.flushLayout();
|
|
expect(root.size.width, equals(sky.view.width));
|
|
expect(root.size.height, equals(sky.view.height));
|
|
renderView.paintFrame();
|
|
print(renderView.lastPaint); // TODO(ianh): figure out how to make this fit the unit testing framework better
|
|
});
|
|
}
|