blob: 3ef1bdb532fe602a8828aac26873fc31c5d3d0a2 [file] [log] [blame]
import 'package:sky/rendering.dart';
import 'package:sky/widgets.dart';
const Size _kTestViewSize = const Size(800.0, 600.0);
class TestRenderView extends RenderView {
TestRenderView({ RenderBox child }) : super(child: child) {
attach();
rootConstraints = new ViewConstraints(size: _kTestViewSize);
scheduleInitialLayout();
}
}
typedef Widget WidgetBuilder();
class TestApp extends App {
TestApp();
WidgetBuilder _builder;
void set builder (WidgetBuilder value) {
setState(() {
_builder = value;
});
}
Widget build() {
if (_builder != null)
return _builder();
return new Container();
}
}
class WidgetTester {
WidgetTester() {
_app = new TestApp();
_renderView = new TestRenderView();
runApp(_app, renderViewOverride: _renderView);
}
TestApp _app;
RenderView _renderView;
void pumpFrame(WidgetBuilder builder) {
_app.builder = builder;
Component.flushBuild();
RenderObject.flushLayout();
}
}