| // 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); |
| }); |
| } |