mirror of
https://github.com/flutter/flutter.git
synced 2026-02-15 15:23:32 +08:00
123 lines
4.8 KiB
Dart
123 lines
4.8 KiB
Dart
// 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/rendering.dart';
|
|
import 'package:flutter/widgets.dart';
|
|
import 'package:flutter_test/flutter_test.dart';
|
|
|
|
void main() {
|
|
testWidgets('Texture with freeze set to true', (WidgetTester tester) async {
|
|
await tester.pumpWidget(
|
|
const Center(child: Texture(textureId: 1, freeze: true)),
|
|
);
|
|
|
|
final Texture texture = tester.firstWidget(find.byType(Texture));
|
|
expect(texture, isNotNull);
|
|
expect(texture.textureId, 1);
|
|
expect(texture.freeze, true);
|
|
|
|
final RenderObject renderObject = tester.firstRenderObject(find.byType(Texture));
|
|
expect(renderObject, isNotNull);
|
|
final TextureBox textureBox = renderObject as TextureBox;
|
|
expect(textureBox, isNotNull);
|
|
expect(textureBox.textureId, 1);
|
|
expect(textureBox.freeze, true);
|
|
|
|
final ContainerLayer containerLayer = ContainerLayer();
|
|
final PaintingContext paintingContext = PaintingContext(containerLayer, Rect.zero);
|
|
textureBox.paint(paintingContext, Offset.zero);
|
|
final Layer layer = containerLayer.lastChild!;
|
|
expect(layer, isNotNull);
|
|
final TextureLayer textureLayer = layer as TextureLayer;
|
|
expect(textureLayer, isNotNull);
|
|
expect(textureLayer.textureId, 1);
|
|
expect(textureLayer.freeze, true);
|
|
});
|
|
|
|
testWidgets('Texture with default FilterQuality', (WidgetTester tester) async {
|
|
await tester.pumpWidget(
|
|
const Center(child: Texture(textureId: 1)),
|
|
);
|
|
|
|
final Texture texture = tester.firstWidget(find.byType(Texture));
|
|
expect(texture, isNotNull);
|
|
expect(texture.textureId, 1);
|
|
expect(texture.filterQuality, FilterQuality.low);
|
|
|
|
final RenderObject renderObject = tester.firstRenderObject(find.byType(Texture));
|
|
expect(renderObject, isNotNull);
|
|
final TextureBox textureBox = renderObject as TextureBox;
|
|
expect(textureBox, isNotNull);
|
|
expect(textureBox.textureId, 1);
|
|
expect(textureBox.filterQuality, FilterQuality.low);
|
|
|
|
final ContainerLayer containerLayer = ContainerLayer();
|
|
final PaintingContext paintingContext = PaintingContext(containerLayer, Rect.zero);
|
|
textureBox.paint(paintingContext, Offset.zero);
|
|
final Layer layer = containerLayer.lastChild!;
|
|
expect(layer, isNotNull);
|
|
final TextureLayer textureLayer = layer as TextureLayer;
|
|
expect(textureLayer, isNotNull);
|
|
expect(textureLayer.textureId, 1);
|
|
expect(textureLayer.filterQuality, FilterQuality.low);
|
|
});
|
|
|
|
|
|
testWidgets('Texture with FilterQuality.none', (WidgetTester tester) async {
|
|
await tester.pumpWidget(
|
|
const Center(child: Texture(textureId: 1, filterQuality: FilterQuality.none)),
|
|
);
|
|
|
|
final Texture texture = tester.firstWidget(find.byType(Texture));
|
|
expect(texture, isNotNull);
|
|
expect(texture.textureId, 1);
|
|
expect(texture.filterQuality, FilterQuality.none);
|
|
|
|
final RenderObject renderObject = tester.firstRenderObject(find.byType(Texture));
|
|
expect(renderObject, isNotNull);
|
|
final TextureBox textureBox = renderObject as TextureBox;
|
|
expect(textureBox, isNotNull);
|
|
expect(textureBox.textureId, 1);
|
|
expect(textureBox.filterQuality, FilterQuality.none);
|
|
|
|
final ContainerLayer containerLayer = ContainerLayer();
|
|
final PaintingContext paintingContext = PaintingContext(containerLayer, Rect.zero);
|
|
textureBox.paint(paintingContext, Offset.zero);
|
|
final Layer layer = containerLayer.lastChild!;
|
|
expect(layer, isNotNull);
|
|
final TextureLayer textureLayer = layer as TextureLayer;
|
|
expect(textureLayer, isNotNull);
|
|
expect(textureLayer.textureId, 1);
|
|
expect(textureLayer.filterQuality, FilterQuality.none);
|
|
});
|
|
|
|
testWidgets('Texture with FilterQuality.low', (WidgetTester tester) async {
|
|
await tester.pumpWidget(
|
|
const Center(child: Texture(textureId: 1)),
|
|
);
|
|
|
|
final Texture texture = tester.firstWidget(find.byType(Texture));
|
|
expect(texture, isNotNull);
|
|
expect(texture.textureId, 1);
|
|
expect(texture.filterQuality, FilterQuality.low);
|
|
|
|
final RenderObject renderObject = tester.firstRenderObject(find.byType(Texture));
|
|
expect(renderObject, isNotNull);
|
|
final TextureBox textureBox = renderObject as TextureBox;
|
|
expect(textureBox, isNotNull);
|
|
expect(textureBox.textureId, 1);
|
|
expect(textureBox.filterQuality, FilterQuality.low);
|
|
|
|
final ContainerLayer containerLayer = ContainerLayer();
|
|
final PaintingContext paintingContext = PaintingContext(containerLayer, Rect.zero);
|
|
textureBox.paint(paintingContext, Offset.zero);
|
|
final Layer layer = containerLayer.lastChild!;
|
|
expect(layer, isNotNull);
|
|
final TextureLayer textureLayer = layer as TextureLayer;
|
|
expect(textureLayer, isNotNull);
|
|
expect(textureLayer.textureId, 1);
|
|
expect(textureLayer.filterQuality, FilterQuality.low);
|
|
});
|
|
}
|