13
13
namespace flutter {
14
14
namespace testing {
15
15
16
- const SkScalar TestDashes1[] = {4.0 , 2.0 };
17
- const SkScalar TestDashes2[] = {1.0 , 1.5 };
18
-
19
16
TEST (DisplayListPathEffect, BuilderSetGet) {
17
+ const SkScalar TestDashes1[] = {4.0 , 2.0 };
20
18
auto dash_path_effect = DlDashPathEffect::Make (TestDashes1, 2 , 0.0 );
21
19
DisplayListBuilder builder;
22
20
ASSERT_EQ (builder.getPathEffect (), nullptr );
@@ -35,84 +33,80 @@ TEST(DisplayListPathEffect, FromSkiaNullPathEffect) {
35
33
}
36
34
37
35
TEST (DisplayListPathEffect, FromSkiaPathEffect) {
36
+ const SkScalar TestDashes2[] = {1.0 , 1.5 };
38
37
sk_sp<SkPathEffect> sk_path_effect =
39
38
SkDashPathEffect::Make (TestDashes2, 2 , 0.0 );
40
39
std::shared_ptr<DlPathEffect> dl_path_effect =
41
40
DlPathEffect::From (sk_path_effect);
42
41
43
42
ASSERT_EQ (dl_path_effect->type (), DlPathEffectType::kDash );
44
- // We cannot recapture the dash parameters from an SkDashPathEffect
45
- ASSERT_EQ (dl_path_effect->asDash (), dl_path_effect.get ());
46
43
ASSERT_TRUE (
47
44
Equals (dl_path_effect, DlDashPathEffect::Make (TestDashes2, 2 , 0.0 )));
48
- SkScalar s1[]{0.0 , 0.0 };
49
- SkPathEffect::DashInfo info1 (s1, 2 , 0 );
50
- sk_path_effect->asADash (&info1);
51
-
52
- SkScalar s2[]{0.0 , 0.0 };
53
- SkPathEffect::DashInfo info2 (s2, 2 , 0 );
54
- dl_path_effect->skia_object ()->asADash (&info2);
55
- // check interval values is equal
56
- for (int i = 0 ; i < 2 ; i++) {
57
- ASSERT_EQ (s1[i], s2[i]);
58
- }
59
- ASSERT_EQ (info1.fCount , info2.fCount );
60
- ASSERT_EQ (info1.fPhase , info2.fPhase );
61
45
}
62
46
63
47
TEST (DisplayListPathEffect, EffectShared) {
48
+ const SkScalar TestDashes2[] = {1.0 , 1.5 };
64
49
auto effect = DlDashPathEffect::Make (TestDashes2, 2 , 0.0 );
65
50
ASSERT_TRUE (Equals (effect->shared (), effect));
66
51
}
67
52
68
53
TEST (DisplayListPathEffect, DashEffectAsDash) {
54
+ const SkScalar TestDashes2[] = {1.0 , 1.5 };
69
55
auto effect = DlDashPathEffect::Make (TestDashes2, 2 , 0.0 );
70
56
ASSERT_NE (effect->asDash (), nullptr );
71
57
ASSERT_EQ (effect->asDash (), effect.get ());
72
58
}
73
59
74
60
TEST (DisplayListPathEffect, DashEffectEquals) {
61
+ const SkScalar TestDashes2[] = {1.0 , 1.5 };
75
62
auto effect1 = DlDashPathEffect::Make (TestDashes2, 2 , 0.0 );
76
63
auto effect2 = DlDashPathEffect::Make (TestDashes2, 2 , 0.0 );
77
64
ASSERT_TRUE (Equals (effect1, effect2));
78
65
ASSERT_TRUE (Equals (effect1->shared (), effect2->shared ()));
79
66
}
80
67
81
68
TEST (DisplayListPathEffect, BlurNotEquals) {
69
+ const SkScalar TestDashes1[] = {4.0 , 2.0 };
70
+ const SkScalar TestDashes2[] = {1.0 , 1.5 };
82
71
auto effect1 = DlDashPathEffect::Make (TestDashes1, 2 , 0.0 );
83
72
auto effect2 = DlDashPathEffect::Make (TestDashes2, 2 , 0.0 );
84
- auto effect3 = DlDashPathEffect::Make (TestDashes2, 3 , 0 .0 );
73
+ auto effect3 = DlDashPathEffect::Make (TestDashes2, 2 , 1 .0 );
85
74
ASSERT_NE (effect1, effect2);
86
75
ASSERT_NE (effect2, effect3);
87
76
ASSERT_NE (effect1->shared (), effect2->shared ());
88
77
ASSERT_NE (effect2->shared (), effect3->shared ());
89
78
}
90
79
91
80
TEST (DisplayListPathEffect, UnknownConstructor) {
81
+ const SkScalar TestDashes1[] = {4.0 , 2.0 };
92
82
DlUnknownPathEffect path_effect (SkDashPathEffect::Make (TestDashes1, 2 , 0.0 ));
93
83
}
94
84
95
85
TEST (DisplayListPathEffect, UnknownShared) {
86
+ const SkScalar TestDashes1[] = {4.0 , 2.0 };
96
87
DlUnknownPathEffect path_effect (SkDashPathEffect::Make (TestDashes1, 2 , 0.0 ));
97
88
ASSERT_NE (path_effect.shared ().get (), &path_effect);
98
89
ASSERT_EQ (*path_effect.shared (), path_effect);
99
90
}
100
91
101
92
TEST (DisplayListPathEffect, UnknownContents) {
93
+ const SkScalar TestDashes1[] = {4.0 , 2.0 };
102
94
sk_sp<SkPathEffect> sk_effect = SkDashPathEffect::Make (TestDashes1, 2 , 0.0 );
103
95
DlUnknownPathEffect effect (sk_effect);
104
96
ASSERT_EQ (effect.skia_object (), sk_effect);
105
97
ASSERT_EQ (effect.skia_object ().get (), sk_effect.get ());
106
98
}
107
99
108
100
TEST (DisplayListPathEffect, UnknownEquals) {
101
+ const SkScalar TestDashes1[] = {4.0 , 2.0 };
109
102
sk_sp<SkPathEffect> sk_effect = SkDashPathEffect::Make (TestDashes1, 2 , 0.0 );
110
103
DlUnknownPathEffect effect1 (sk_effect);
111
104
DlUnknownPathEffect effect2 (sk_effect);
112
105
TestEquals (effect1, effect1);
113
106
}
114
107
115
108
TEST (DisplayListPathEffect, UnknownNotEquals) {
109
+ const SkScalar TestDashes1[] = {4.0 , 2.0 };
116
110
// Even though the effect is the same, it is a different instance
117
111
// and we cannot currently tell them apart because the Skia
118
112
// DashEffect::Make objects do not implement ==
@@ -173,9 +167,11 @@ void testNotEquals(std::shared_ptr<const DlPathEffect> a,
173
167
}
174
168
175
169
TEST (DisplayListPathEffect, ComparableTemplates) {
170
+ const SkScalar TestDashes1[] = {4.0 , 2.0 };
171
+ const SkScalar TestDashes2[] = {1.0 , 1.5 };
176
172
auto effect1 = DlDashPathEffect::Make (TestDashes1, 2 , 0.0 );
177
173
auto effect2 = DlDashPathEffect::Make (TestDashes1, 2 , 0.0 );
178
- auto effect3 = DlDashPathEffect::Make (TestDashes2, 3 , 0 .0 );
174
+ auto effect3 = DlDashPathEffect::Make (TestDashes2, 2 , 1 .0 );
179
175
std::shared_ptr<DlPathEffect> shared_null;
180
176
181
177
// null to null
0 commit comments