mirror of
https://github.com/flutter/flutter.git
synced 2026-02-20 02:29:02 +08:00
RenderOffStage test
Also, give RenderViewport a default offset.
This commit is contained in:
parent
5214893043
commit
ff76ceb40e
@ -32,7 +32,7 @@ class RenderViewport extends RenderBox with RenderObjectWithChildMixin<RenderBox
|
||||
|
||||
RenderViewport({
|
||||
RenderBox child,
|
||||
Offset scrollOffset,
|
||||
Offset scrollOffset: Offset.zero,
|
||||
ScrollDirection scrollDirection: ScrollDirection.vertical
|
||||
}) : _scrollOffset = scrollOffset,
|
||||
_scrollDirection = scrollDirection {
|
||||
|
||||
32
packages/unit/test/rendering/offstage_test.dart
Normal file
32
packages/unit/test/rendering/offstage_test.dart
Normal file
@ -0,0 +1,32 @@
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:flutter/rendering.dart';
|
||||
import 'package:test/test.dart';
|
||||
|
||||
import 'rendering_tester.dart';
|
||||
|
||||
void main() {
|
||||
test("offstage", () {
|
||||
RenderBox child;
|
||||
bool painted = false;
|
||||
// viewport incoming constraints are tight 800x600
|
||||
// viewport is vertical by default
|
||||
RenderBox root = new RenderViewport(
|
||||
child: new RenderOffStage(
|
||||
child: new RenderCustomPaint(
|
||||
child: child = new RenderConstrainedBox(
|
||||
additionalConstraints: new BoxConstraints.tightFor(height: 10.0, width: 10.0)
|
||||
),
|
||||
onPaint: (PaintingCanvas canvas, Size size) {
|
||||
painted = true;
|
||||
}
|
||||
)
|
||||
)
|
||||
);
|
||||
expect(child.hasSize, isFalse);
|
||||
expect(painted, isFalse);
|
||||
layout(root, phase: EnginePhase.paint);
|
||||
expect(child.hasSize, isTrue);
|
||||
expect(painted, isFalse);
|
||||
expect(child.size, equals(const Size(800.0, 10.0)));
|
||||
});
|
||||
}
|
||||
Loading…
x
Reference in New Issue
Block a user