Unverified Commit bf8313f8 authored by Jia Hao's avatar Jia Hao Committed by GitHub

Add a test for intrinsic size checks (#71539)

parent 746056a5
...@@ -83,4 +83,45 @@ void main() { ...@@ -83,4 +83,45 @@ void main() {
pumpFrame(); pumpFrame();
expect(root.size, equals(inner.size)); expect(root.size, equals(inner.size));
}); });
test('When RenderObject.debugCheckingIntrinsics is true, parent returns correct intrinsics', () {
RenderObject.debugCheckingIntrinsics = true;
try {
RenderParentSize parent;
RenderFixedSize inner;
layout(
RenderIntrinsicSize(
child: parent = RenderParentSize(
child: inner = RenderFixedSize()
)
),
constraints: const BoxConstraints(
minWidth: 0.0,
minHeight: 0.0,
maxWidth: 1000.0,
maxHeight: 1000.0,
),
);
_expectIntrinsicDimensions(parent, 100);
inner.grow();
pumpFrame();
_expectIntrinsicDimensions(parent, 200);
} finally {
RenderObject.debugCheckingIntrinsics = false;
}
});
}
/// Asserts that all unbounded intrinsic dimensions for [object] match
/// [dimension].
void _expectIntrinsicDimensions(RenderBox object, double dimension) {
expect(object.getMinIntrinsicWidth(double.infinity), equals(dimension));
expect(object.getMaxIntrinsicWidth(double.infinity), equals(dimension));
expect(object.getMinIntrinsicHeight(double.infinity), equals(dimension));
expect(object.getMaxIntrinsicHeight(double.infinity), equals(dimension));
} }
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment