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 7808 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
7819 path.moveTo(SkBits2Float(0x39724aff), SkBits2Float(0x7200397d)); // 0.000231069
f, 2.53975e+30f | 7819 path.moveTo(SkBits2Float(0x39724aff), SkBits2Float(0x7200397d)); // 0.000231069
f, 2.53975e+30f |
7820 path.quadTo(SkBits2Float(0x827a0572), SkBits2Float(0x72727272), SkBits2Float(0x7
24adf00), SkBits2Float(0x00397d39)); // -1.83687e-37f, 4.80216e+30f, 4.01828e+3
0f, 5.27954e-39f | 7820 path.quadTo(SkBits2Float(0x827a0572), SkBits2Float(0x72727272), SkBits2Float(0x7
24adf00), SkBits2Float(0x00397d39)); // -1.83687e-37f, 4.80216e+30f, 4.01828e+3
0f, 5.27954e-39f |
7821 path.quadTo(SkBits2Float(0x7a057272), SkBits2Float(0x16f3abab), SkBits2Float(0xf
c5b97fc), SkBits2Float(0x47440039)); // 1.73224e+35f, 3.93671e-25f, -4.56078e+3
6f, 50176.2f | 7821 path.quadTo(SkBits2Float(0x7a057272), SkBits2Float(0x16f3abab), SkBits2Float(0xf
c5b97fc), SkBits2Float(0x47440039)); // 1.73224e+35f, 3.93671e-25f, -4.56078e+3
6f, 50176.2f |
7822 path.lineTo(SkBits2Float(0x00710000), SkBits2Float(0x62767201)); // 1.03774e-38
f, 1.13653e+21f | 7822 path.lineTo(SkBits2Float(0x00710000), SkBits2Float(0x62767201)); // 1.03774e-38
f, 1.13653e+21f |
7823 path.quadTo(SkBits2Float(0x7a05726e), SkBits2Float(0x72727272), SkBits2Float(0xf
3db5e64), SkBits2Float(0x4a5afc16)); // 1.73224e+35f, 4.80216e+30f, -3.47604e+3
1f, 3.58785e+06f | 7823 path.quadTo(SkBits2Float(0x7a05726e), SkBits2Float(0x72727272), SkBits2Float(0xf
3db5e64), SkBits2Float(0x4a5afc16)); // 1.73224e+35f, 4.80216e+30f, -3.47604e+3
1f, 3.58785e+06f |
7824 | 7824 |
7825 SkPath path2(path); | 7825 SkPath path2(path); |
7826 testPathOpFuzz(reporter, path1, path2, (SkPathOp) 4, filename); | 7826 testPathOpFuzz(reporter, path1, path2, (SkPathOp) 4, filename); |
7827 } | 7827 } |
7828 | 7828 |
| 7829 |
| 7830 static void fuzz763_42(skiatest::Reporter* reporter, const char* filename) { |
| 7831 SkPath path; |
| 7832 path.setFillType((SkPath::FillType) 0); |
| 7833 |
| 7834 SkPath path1(path); |
| 7835 path.reset(); |
| 7836 path.setFillType((SkPath::FillType) 0); |
| 7837 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0x00000000)); // 0, 0 |
| 7838 path.quadTo(SkBits2Float(0x7a057272), SkBits2Float(0x72727272), SkBits2Float(0x7
25b5e72), SkBits2Float(0x05720089)); // 1.73224e+35f, 4.80216e+30f, 4.34505e+30
f, 1.13789e-35f |
| 7839 path.quadTo(SkBits2Float(0x7a057272), SkBits2Float(0x72727272), SkBits2Float(0xb
a405e72), SkBits2Float(0x03000074)); // 1.73224e+35f, 4.80216e+30f, -0.00073382
9f, 3.76163e-37f |
| 7840 path.lineTo(SkBits2Float(0x724aff00), SkBits2Float(0x56397d39)); // 4.02075e+30
f, 5.09869e+13f |
| 7841 path.quadTo(SkBits2Float(0x7a057272), SkBits2Float(0xfa8d00ff), SkBits2Float(0x2
5727272), SkBits2Float(0x7272727a)); // 1.73224e+35f, -3.66067e+35f, 2.10289e-1
6f, 4.80216e+30f |
| 7842 path.quadTo(SkBits2Float(0xba5b5e72), SkBits2Float(0x03000093), SkBits2Float(0x7
4ba00e8), SkBits2Float(0xe8e0ff00)); // -0.000836826f, 3.76165e-37f, 1.17894e+3
2f, -8.50011e+24f |
| 7843 path.conicTo(SkBits2Float(0x39724aff), SkBits2Float(0x7200397d), SkBits2Float(0x
7a057272), SkBits2Float(0x72727272), SkBits2Float(0x4aff0072)); // 0.000231069f
, 2.53975e+30f, 1.73224e+35f, 4.80216e+30f, 8.3559e+06f |
| 7844 path.quadTo(SkBits2Float(0x00397d39), SkBits2Float(0x05727272), SkBits2Float(0x7
272727a), SkBits2Float(0x385e7272)); // 5.27954e-39f, 1.13998e-35f, 4.80216e+30
f, 5.30355e-05f |
| 7845 path.quadTo(SkBits2Float(0x057200ff), SkBits2Float(0x25727272), SkBits2Float(0x7
272727a), SkBits2Float(0x5b5e7272)); // 1.1379e-35f, 2.10289e-16f, 4.80216e+30f
, 6.26133e+16f |
| 7846 path.cubicTo(SkBits2Float(0x03000074), SkBits2Float(0x4aff00e8), SkBits2Float(0x
397d3972), SkBits2Float(0x01000400), SkBits2Float(0x72727a10), SkBits2Float(0x5e
647272)); // 3.76163e-37f, 8.35596e+06f, 0.000241494f, 2.35128e-38f, 4.80275e+3
0f, 4.11534e+18f |
| 7847 path.quadTo(SkBits2Float(0x2b2d16f3), SkBits2Float(0x0039fc4d), SkBits2Float(0x6
8800000), SkBits2Float(0x0100fafa)); // 6.14938e-13f, 5.32513e-39f, 4.8357e+24f
, 2.369e-38f |
| 7848 path.quadTo(SkBits2Float(0x7a057272), SkBits2Float(0x72727272), SkBits2Float(0x7
25b5e72), SkBits2Float(0x63720089)); // 1.73224e+35f, 4.80216e+30f, 4.34505e+30
f, 4.46415e+21f |
| 7849 path.lineTo(SkBits2Float(0x63636363), SkBits2Float(0x63606363)); // 4.19457e+21
f, 4.13923e+21f |
| 7850 path.lineTo(SkBits2Float(0x72720000), SkBits2Float(0xff725b5e)); // 4.7933e+30f
, -3.22148e+38f |
| 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 |
| 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 |
| 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 |
| 7857 SkPath path2(path); |
| 7858 testPathOpFuzz(reporter, path1, path2, (SkPathOp) 4, filename); |
| 7859 } |
| 7860 |
7829 static struct TestDesc failTests[] = { | 7861 static struct TestDesc failTests[] = { |
| 7862 TEST(fuzz763_42), |
7830 TEST(fuzz763_41), | 7863 TEST(fuzz763_41), |
7831 TEST(fuzz763_40), | 7864 TEST(fuzz763_40), |
7832 TEST(fuzz763_39), | 7865 TEST(fuzz763_39), |
7833 TEST(fuzz763_38), | 7866 TEST(fuzz763_38), |
7834 TEST(fuzz763_37), | 7867 TEST(fuzz763_37), |
7835 TEST(fuzz763_36), | 7868 TEST(fuzz763_36), |
7836 TEST(fuzz763_35), | 7869 TEST(fuzz763_35), |
7837 TEST(fuzz763_34), | 7870 TEST(fuzz763_34), |
7838 TEST(fuzz763_33), | 7871 TEST(fuzz763_33), |
7839 TEST(fuzz763_32), | 7872 TEST(fuzz763_32), |
(...skipping 61 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
7901 static struct TestDesc repTests[] = { | 7934 static struct TestDesc repTests[] = { |
7902 TEST(loops44i), | 7935 TEST(loops44i), |
7903 TEST(loops45i), | 7936 TEST(loops45i), |
7904 TEST(loops46i), | 7937 TEST(loops46i), |
7905 }; | 7938 }; |
7906 | 7939 |
7907 DEF_TEST(PathOpsRepOp, reporter) { | 7940 DEF_TEST(PathOpsRepOp, reporter) { |
7908 for (int index = 0; index < 2; ++index) | 7941 for (int index = 0; index < 2; ++index) |
7909 RunTestSet(reporter, repTests, SK_ARRAY_COUNT(repTests), nullptr, nullptr, n
ullptr, false); | 7942 RunTestSet(reporter, repTests, SK_ARRAY_COUNT(repTests), nullptr, nullptr, n
ullptr, false); |
7910 } | 7943 } |
OLD | NEW |