OLD | NEW |
1 /* | 1 /* |
2 * Copyright 2012 Google Inc. | 2 * Copyright 2012 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 #include "PathOpsExtendedTest.h" | 7 #include "PathOpsExtendedTest.h" |
8 #include "PathOpsTestCommon.h" | 8 #include "PathOpsTestCommon.h" |
9 | 9 |
10 class PathTest_Private { | 10 class PathTest_Private { |
(...skipping 7840 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
7851 path.moveTo(SkBits2Float(0x72720572), SkBits2Float(0x5b5e2572)); // 4.79373e+30
f, 6.25286e+16f | 7851 path.moveTo(SkBits2Float(0x72720572), SkBits2Float(0x5b5e2572)); // 4.79373e+30
f, 6.25286e+16f |
7852 path.quadTo(SkBits2Float(0x05720089), SkBits2Float(0x25727272), SkBits2Float(0x7
2728c7a), SkBits2Float(0x5b5e7272)); // 1.13789e-35f, 2.10289e-16f, 4.80417e+30
f, 6.26133e+16f | 7852 path.quadTo(SkBits2Float(0x05720089), SkBits2Float(0x25727272), SkBits2Float(0x7
2728c7a), SkBits2Float(0x5b5e7272)); // 1.13789e-35f, 2.10289e-16f, 4.80417e+30
f, 6.26133e+16f |
7853 path.cubicTo(SkBits2Float(0x03000074), SkBits2Float(0x4aff00e8), SkBits2Float(0x
397d3972), SkBits2Float(0x01000400), SkBits2Float(0x72727a10), SkBits2Float(0x5e
827272)); // 3.76163e-37f, 8.35596e+06f, 0.000241494f, 2.35128e-38f, 4.80275e+3
0f, 4.69985e+18f | 7853 path.cubicTo(SkBits2Float(0x03000074), SkBits2Float(0x4aff00e8), SkBits2Float(0x
397d3972), SkBits2Float(0x01000400), SkBits2Float(0x72727a10), SkBits2Float(0x5e
827272)); // 3.76163e-37f, 8.35596e+06f, 0.000241494f, 2.35128e-38f, 4.80275e+3
0f, 4.69985e+18f |
7854 path.quadTo(SkBits2Float(0x97fc16f3), SkBits2Float(0x0039fc5b), SkBits2Float(0x0
0f6472e), SkBits2Float(0x01008000)); // -1.62909e-24f, 5.32515e-39f, 2.26171e-3
8f, 2.36017e-38f | 7854 path.quadTo(SkBits2Float(0x97fc16f3), SkBits2Float(0x0039fc5b), SkBits2Float(0x0
0f6472e), SkBits2Float(0x01008000)); // -1.62909e-24f, 5.32515e-39f, 2.26171e-3
8f, 2.36017e-38f |
7855 path.quadTo(SkBits2Float(0x7a057272), SkBits2Float(0x72727272), SkBits2Float(0xf
3db5e64), SkBits2Float(0x4a5afc16)); // 1.73224e+35f, 4.80216e+30f, -3.47604e+3
1f, 3.58785e+06f | 7855 path.quadTo(SkBits2Float(0x7a057272), SkBits2Float(0x72727272), SkBits2Float(0xf
3db5e64), SkBits2Float(0x4a5afc16)); // 1.73224e+35f, 4.80216e+30f, -3.47604e+3
1f, 3.58785e+06f |
7856 | 7856 |
7857 SkPath path2(path); | 7857 SkPath path2(path); |
7858 testPathOpFuzz(reporter, path1, path2, (SkPathOp) 4, filename); | 7858 testPathOpFuzz(reporter, path1, path2, (SkPathOp) 4, filename); |
7859 } | 7859 } |
7860 | 7860 |
| 7861 static void fuzz763_43(skiatest::Reporter* reporter, const char* filename) { |
| 7862 SkPath path; |
| 7863 path.setFillType((SkPath::FillType) 1); |
| 7864 |
| 7865 SkPath path1(path); |
| 7866 path.reset(); |
| 7867 path.setFillType((SkPath::FillType) 0); |
| 7868 path.moveTo(SkBits2Float(0x5c386c3a), SkBits2Float(0x4e691a3e)); // 2.07642e+17
f, 9.77703e+08f |
| 7869 path.cubicTo(SkBits2Float(0x6f69f9f5), SkBits2Float(0x18ff8791), SkBits2Float(0x
2492263c), SkBits2Float(0xbc6fdb48), SkBits2Float(0xc2f82107), SkBits2Float(0x72
9a18e1)); // 7.24122e+28f, 6.60528e-24f, 6.33822e-17f, -0.0146397f, -124.065f,
6.10442e+30f |
| 7870 path.cubicTo(SkBits2Float(0x07d729d1), SkBits2Float(0xdea6db48), SkBits2Float(0x
cd1dfb88), SkBits2Float(0x90826769), SkBits2Float(0x1c20e5a4), SkBits2Float(0xa4
c3ba9b)); // 3.23742e-34f, -6.01164e+18f, -1.65657e+08f, -5.14353e-29f, 5.32364
e-22f, -8.48839e-17f |
| 7871 path.moveTo(SkBits2Float(0xcc2084b7), SkBits2Float(0x19f68bdb)); // -4.20789e+0
7f, 2.54923e-23f |
| 7872 path.close(); |
| 7873 path.moveTo(SkBits2Float(0xcc2084b7), SkBits2Float(0x19f68bdb)); // -4.20789e+0
7f, 2.54923e-23f |
| 7874 path.cubicTo(SkBits2Float(0xdeea1d6e), SkBits2Float(0xc7774804), SkBits2Float(0x
27cf0dcf), SkBits2Float(0x6ae8b99f), SkBits2Float(0x24ac3260), SkBits2Float(0x06
2fa93c)); // -8.43488e+18f, -63304, 5.7469e-15f, 1.40674e+26f, 7.46784e-17f, 3.
30382e-35f |
| 7875 path.lineTo(SkBits2Float(0x438a0b9c), SkBits2Float(0x60a1d2c8)); // 276.091f, 9
.32848e+19f |
| 7876 path.quadTo(SkBits2Float(0xe13fb902), SkBits2Float(0x07ee536f), SkBits2Float(0x9
71d8ac1), SkBits2Float(0x2f9f174b)); // -2.21041e+20f, 3.58593e-34f, -5.09046e-
25f, 2.89385e-10f |
| 7877 path.lineTo(SkBits2Float(0x0f2cf5d8), SkBits2Float(0xe271654c)); // 8.5276e-30f
, -1.11324e+21f |
| 7878 path.lineTo(SkBits2Float(0xe6cf24d2), SkBits2Float(0xd9537742)); // -4.89105e+2
3f, -3.72015e+15f |
| 7879 path.cubicTo(SkBits2Float(0x1aaaee04), SkBits2Float(0x9e3b804c), SkBits2Float(0x
84cba87d), SkBits2Float(0x4e0e8ccc), SkBits2Float(0x2aec611a), SkBits2Float(0x7a
e4b639)); // 7.06949e-23f, -9.92623e-21f, -4.78798e-36f, 5.97898e+08f, 4.19894e
-13f, 5.9377e+35f |
| 7880 path.conicTo(SkBits2Float(0x73357921), SkBits2Float(0x6f163021), SkBits2Float(0x
70ea542c), SkBits2Float(0xe008f404), SkBits2Float(0x1f6c5e52)); // 1.43778e+31f
, 4.64809e+28f, 5.8017e+29f, -3.94741e+19f, 5.0053e-20f |
| 7881 path.lineTo(SkBits2Float(0xda45ad4e), SkBits2Float(0xedce4a04)); // -1.39103e+1
6f, -7.98042e+27f |
| 7882 path.lineTo(SkBits2Float(0xac0e45da), SkBits2Float(0x8f632841)); // -2.02182e-1
2f, -1.11997e-29f |
| 7883 path.lineTo(SkBits2Float(0xcc2084b7), SkBits2Float(0x19f68bdb)); // -4.20789e+0
7f, 2.54923e-23f |
| 7884 path.close(); |
| 7885 path.moveTo(SkBits2Float(0xcc2084b7), SkBits2Float(0x19f68bdb)); // -4.20789e+0
7f, 2.54923e-23f |
| 7886 path.quadTo(SkBits2Float(0xf35c4ad5), SkBits2Float(0x0692f251), SkBits2Float(0x6
9632126), SkBits2Float(0xb927af67)); // -1.74534e+31f, 5.52751e-35f, 1.71614e+2
5f, -0.000159917f |
| 7887 path.moveTo(SkBits2Float(0x6534bff9), SkBits2Float(0x434a9986)); // 5.3348e+22f
, 202.6f |
| 7888 path.quadTo(SkBits2Float(0x37c603e5), SkBits2Float(0xa0683953), SkBits2Float(0x7
51915e4), SkBits2Float(0x831c911a)); // 2.36053e-05f, -1.96701e-19f, 1.94059e+3
2f, -4.60108e-37f |
| 7889 path.cubicTo(SkBits2Float(0xba4f10f1), SkBits2Float(0x5a7571df), SkBits2Float(0x
4ec67459), SkBits2Float(0x33c58827), SkBits2Float(0x10b78ccb), SkBits2Float(0xed
bd2748)); // -0.000789895f, 1.72716e+16f, 1.66476e+09f, 9.19829e-08f, 7.23977e-
29f, -7.31752e+27f |
| 7890 path.cubicTo(SkBits2Float(0x6d06f06a), SkBits2Float(0xe30465cf), SkBits2Float(0x
c5458fe7), SkBits2Float(0xca488dc4), SkBits2Float(0x38f9021c), SkBits2Float(0x3e
8d58db)); // 2.6101e+27f, -2.44231e+21f, -3160.99f, -3.28587e+06f, 0.000118736f
, 0.276069f |
| 7891 |
| 7892 SkPath path2(path); |
| 7893 testPathOpFuzz(reporter, path1, path2, (SkPathOp) 4, filename); |
| 7894 } |
| 7895 |
7861 static struct TestDesc failTests[] = { | 7896 static struct TestDesc failTests[] = { |
| 7897 TEST(fuzz763_43), |
7862 TEST(fuzz763_42), | 7898 TEST(fuzz763_42), |
7863 TEST(fuzz763_41), | 7899 TEST(fuzz763_41), |
7864 TEST(fuzz763_40), | 7900 TEST(fuzz763_40), |
7865 TEST(fuzz763_39), | 7901 TEST(fuzz763_39), |
7866 TEST(fuzz763_38), | 7902 TEST(fuzz763_38), |
7867 TEST(fuzz763_37), | 7903 TEST(fuzz763_37), |
7868 TEST(fuzz763_36), | 7904 TEST(fuzz763_36), |
7869 TEST(fuzz763_35), | 7905 TEST(fuzz763_35), |
7870 TEST(fuzz763_34), | 7906 TEST(fuzz763_34), |
7871 TEST(fuzz763_33), | 7907 TEST(fuzz763_33), |
(...skipping 62 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
7934 static struct TestDesc repTests[] = { | 7970 static struct TestDesc repTests[] = { |
7935 TEST(loops44i), | 7971 TEST(loops44i), |
7936 TEST(loops45i), | 7972 TEST(loops45i), |
7937 TEST(loops46i), | 7973 TEST(loops46i), |
7938 }; | 7974 }; |
7939 | 7975 |
7940 DEF_TEST(PathOpsRepOp, reporter) { | 7976 DEF_TEST(PathOpsRepOp, reporter) { |
7941 for (int index = 0; index < 2; ++index) | 7977 for (int index = 0; index < 2; ++index) |
7942 RunTestSet(reporter, repTests, SK_ARRAY_COUNT(repTests), nullptr, nullptr, n
ullptr, false); | 7978 RunTestSet(reporter, repTests, SK_ARRAY_COUNT(repTests), nullptr, nullptr, n
ullptr, false); |
7943 } | 7979 } |
OLD | NEW |