OLD | NEW |
1 /* | 1 /* |
2 * Copyright 2014 Google Inc. | 2 * Copyright 2014 Google Inc. |
3 * | 3 * |
4 * Use of this source code is governed by a BSD-style license that can be | 4 * Use of this source code is governed by a BSD-style license that can be |
5 * found in the LICENSE file. | 5 * found in the LICENSE file. |
6 */ | 6 */ |
7 | 7 |
8 #include "PathOpsExtendedTest.h" | 8 #include "PathOpsExtendedTest.h" |
9 #include "PathOpsTestCommon.h" | 9 #include "PathOpsTestCommon.h" |
10 #include "SkBitmap.h" | 10 #include "SkBitmap.h" |
(...skipping 252 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
263 inner.addRect(10, 30, 10+100, 30+60); // <rect x="10" y="30" width="
100" height="60" /> | 263 inner.addRect(10, 30, 10+100, 30+60); // <rect x="10" y="30" width="
100" height="60" /> |
264 inner.addRect(757798030.f, 30, 757798030.f+100, 30+60); // <rect x="75779803
0" y="30" width="100" height="60" /> | 264 inner.addRect(757798030.f, 30, 757798030.f+100, 30+60); // <rect x="75779803
0" y="30" width="100" height="60" /> |
265 clipRect.addPath(inner); | 265 clipRect.addPath(inner); |
266 | 266 |
267 SkOpBuilder builder; | 267 SkOpBuilder builder; |
268 builder.add(clipCircle, kUnion_SkPathOp); | 268 builder.add(clipCircle, kUnion_SkPathOp); |
269 builder.add(clipRect, kDifference_SkPathOp); | 269 builder.add(clipRect, kDifference_SkPathOp); |
270 SkPath result; | 270 SkPath result; |
271 builder.resolve(&result); | 271 builder.resolve(&result); |
272 } | 272 } |
273 | |
274 #include "SkParsePath.h" | |
275 | |
276 DEF_TEST(fuzzTNG, reporter) { | |
277 const char* pathStrs[] = { | |
278 "M360,-2147483648.000000000000000000000000000000000000000000000000000001 A3240,3
240 0.0 0 11 256,256 L100000000,4140 Z", | |
279 "M360,4140 A11,-1 0.0 0 0 6840,4140 L100,512 L32,16 L360,1024 Z", | |
280 "M360,4140 A3240,1000000001 32768 1024 128 100000000.000000000000000000000000000
000000000000000000000000001,512 Z", | |
281 "M127,321 L6840,270 L-21474836481,100000000 L2551,64 Z", | |
282 "M-128,4140 Z", | |
283 }; | |
284 SkPath clip[SK_ARRAY_COUNT(pathStrs)]; | |
285 SkOpBuilder builder; | |
286 for (size_t i = 0; i < SK_ARRAY_COUNT(pathStrs); ++i) { | |
287 SkParsePath::FromSVGString(pathStrs[i], &clip[i]); | |
288 builder.add(clip[i], kUnion_SkPathOp); | |
289 } | |
290 SkPath result; | |
291 builder.resolve(&result); | |
292 SkPath path; | |
293 SkParsePath::FromSVGString("M-315,7425 L4096,7425 L-1000000001,-315 L-315,74
25 Z", &path); | |
294 builder.add(path, kDifference_SkPathOp); | |
295 testPathOp(reporter, result, path, kDifference_SkPathOp, __FUNCTION__); | |
296 } | |
OLD | NEW |