9
9
import 'dart:typed_data' ;
10
10
import 'dart:ui' ;
11
11
12
+ import 'package:flutter/foundation.dart' ;
12
13
import 'package:flutter/material.dart' ;
13
14
import 'package:flutter/rendering.dart' ;
14
15
import 'package:flutter_test/flutter_test.dart' ;
@@ -29,6 +30,37 @@ void main() {
29
30
);
30
31
});
31
32
33
+ testWidgets ('Image filter - dilate' , (WidgetTester tester) async {
34
+ await tester.pumpWidget (
35
+ RepaintBoundary (
36
+ child: ImageFiltered (
37
+ imageFilter: ImageFilter .dilate (radiusX: 10.0 , radiusY: 10.0 ),
38
+ child: const Placeholder (),
39
+ ),
40
+ ),
41
+ );
42
+ await expectLater (
43
+ find.byType (ImageFiltered ),
44
+ matchesGoldenFile ('image_filter_dilate.png' ),
45
+ );
46
+ }, skip: kIsWeb); // https://github.com/flutter/flutter/issues/101874
47
+
48
+ testWidgets ('Image filter - erode' , (WidgetTester tester) async {
49
+ await tester.pumpWidget (
50
+ RepaintBoundary (
51
+ child: ImageFiltered (
52
+ // Do not erode too much, otherwise we will see nothing left.
53
+ imageFilter: ImageFilter .erode (radiusX: 1.0 , radiusY: 1.0 ),
54
+ child: const Placeholder (strokeWidth: 4 ),
55
+ ),
56
+ ),
57
+ );
58
+ await expectLater (
59
+ find.byType (ImageFiltered ),
60
+ matchesGoldenFile ('image_filter_erode.png' ),
61
+ );
62
+ }, skip: kIsWeb); // https://github.com/flutter/flutter/issues/101874
63
+
32
64
testWidgets ('Image filter - matrix' , (WidgetTester tester) async {
33
65
final ImageFilter matrix = ImageFilter .matrix (Float64List .fromList (< double > [
34
66
0.5 , 0.0 , 0.0 , 0.0 , //
0 commit comments