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 | 8 |
9 #define TEST(name) { name, #name } | 9 #define TEST(name) { name, #name } |
10 | 10 |
(...skipping 3553 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
3564 path.close(); | 3564 path.close(); |
3565 SkPath pathB; | 3565 SkPath pathB; |
3566 pathB.setFillType(SkPath::kWinding_FillType); | 3566 pathB.setFillType(SkPath::kWinding_FillType); |
3567 pathB.moveTo(365, 5082); | 3567 pathB.moveTo(365, 5082); |
3568 pathB.lineTo(365.848175f, 5081.15186f); | 3568 pathB.lineTo(365.848175f, 5081.15186f); |
3569 pathB.lineTo(368, 5103); | 3569 pathB.lineTo(368, 5103); |
3570 pathB.lineTo(365, 5106); | 3570 pathB.lineTo(365, 5106); |
3571 testPathOp(reporter, path, pathB, kIntersect_PathOp, filename); | 3571 testPathOp(reporter, path, pathB, kIntersect_PathOp, filename); |
3572 } | 3572 } |
3573 | 3573 |
3574 #if TEST_NEW_FAILURES | |
3575 // addTCoincident SkASSERT(test->fT < 1); | |
3576 static void skpwww_googleventures_com_32(skiatest::Reporter* reporter, const cha
r* filename) { | 3574 static void skpwww_googleventures_com_32(skiatest::Reporter* reporter, const cha
r* filename) { |
3577 SkPath path; | 3575 SkPath path; |
3578 path.setFillType(SkPath::kEvenOdd_FillType); | 3576 path.setFillType(SkPath::kEvenOdd_FillType); |
3579 path.moveTo(725.911682f, 898.767456f); | 3577 path.moveTo(725.911682f, 898.767456f); |
3580 path.lineTo(741.232544f, 885.911682f); | 3578 path.lineTo(741.232544f, 885.911682f); |
3581 path.lineTo(754.088318f, 901.232544f); | 3579 path.lineTo(754.088318f, 901.232544f); |
3582 path.lineTo(738.767456f, 914.088318f); | 3580 path.lineTo(738.767456f, 914.088318f); |
3583 path.lineTo(725.911682f, 898.767456f); | 3581 path.lineTo(725.911682f, 898.767456f); |
3584 path.close(); | 3582 path.close(); |
3585 SkPath pathB; | 3583 SkPath pathB; |
3586 pathB.setFillType(SkPath::kWinding_FillType); | 3584 pathB.setFillType(SkPath::kWinding_FillType); |
3587 pathB.moveTo(728.37677f, 870.59082f); | 3585 pathB.moveTo(728.37677f, 870.59082f); |
3588 pathB.lineTo(754.088257f, 901.232605f); | 3586 pathB.lineTo(754.088257f, 901.232605f); |
3589 pathB.lineTo(738.767395f, 914.088379f); | 3587 pathB.lineTo(738.767395f, 914.088379f); |
3590 pathB.lineTo(713.055908f, 883.446594f); | 3588 pathB.lineTo(713.055908f, 883.446594f); |
3591 pathB.close(); | 3589 pathB.close(); |
3592 testPathOp(reporter, path, pathB, kIntersect_PathOp, filename); | 3590 testPathOp(reporter, path, pathB, kIntersect_PathOp, filename); |
3593 } | 3591 } |
3594 | 3592 |
3595 // checkSmallCoincidence failed assertion "!next->fSmall || checkMultiple" | 3593 #if TEST_NEW_FAILURES |
3596 static void skpwww_devbridge_com_22(skiatest::Reporter* reporter, const char* fi
lename) { | 3594 static void skpwww_devbridge_com_22(skiatest::Reporter* reporter, const char* fi
lename) { |
3597 SkPath path; | 3595 SkPath path; |
3598 path.setFillType(SkPath::kEvenOdd_FillType); | 3596 path.setFillType(SkPath::kEvenOdd_FillType); |
3599 path.moveTo(4915, 1523); | 3597 path.moveTo(4915, 1523); |
3600 path.quadTo(4887.24756f, 1523, 4867.62402f, 1542.6239f); | 3598 path.quadTo(4887.24756f, 1523, 4867.62402f, 1542.6239f); |
3601 path.quadTo(4848, 1562.24768f, 4848, 1590); | 3599 path.quadTo(4848, 1562.24768f, 4848, 1590); |
3602 path.quadTo(4848, 1617.75232f, 4867.62402f, 1637.3761f); | 3600 path.quadTo(4848, 1617.75232f, 4867.62402f, 1637.3761f); |
3603 path.quadTo(4887.24756f, 1657, 4915, 1657); | 3601 path.quadTo(4887.24756f, 1657, 4915, 1657); |
3604 path.quadTo(4942.75244f, 1657, 4962.37598f, 1637.3761f); | 3602 path.quadTo(4942.75244f, 1657, 4962.37598f, 1637.3761f); |
3605 path.quadTo(4982, 1617.75232f, 4982, 1590); | 3603 path.quadTo(4982, 1617.75232f, 4982, 1590); |
(...skipping 59 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
3665 path.lineTo(143, 14557); | 3663 path.lineTo(143, 14557); |
3666 path.close(); | 3664 path.close(); |
3667 SkPath pathB; | 3665 SkPath pathB; |
3668 pathB.setFillType(SkPath::kWinding_FillType); | 3666 pathB.setFillType(SkPath::kWinding_FillType); |
3669 pathB.moveTo(143, 14557); | 3667 pathB.moveTo(143, 14557); |
3670 pathB.lineTo(143, 14555.9902f); | 3668 pathB.lineTo(143, 14555.9902f); |
3671 pathB.lineTo(165, 14556); | 3669 pathB.lineTo(165, 14556); |
3672 pathB.lineTo(165, 14557); | 3670 pathB.lineTo(165, 14557); |
3673 testPathOp(reporter, path, pathB, kIntersect_PathOp, filename); | 3671 testPathOp(reporter, path, pathB, kIntersect_PathOp, filename); |
3674 } | 3672 } |
| 3673 #endif |
3675 | 3674 |
3676 // addTCancel: failed assertion "oIndex > 0" | |
3677 static void skpwww_firstunitedbank_com_19(skiatest::Reporter* reporter, const ch
ar* filename) { | 3675 static void skpwww_firstunitedbank_com_19(skiatest::Reporter* reporter, const ch
ar* filename) { |
3678 SkPath path; | 3676 SkPath path; |
3679 path.setFillType(SkPath::kEvenOdd_FillType); | 3677 path.setFillType(SkPath::kEvenOdd_FillType); |
3680 path.moveTo(808.585815f, 11673.5859f); | 3678 path.moveTo(808.585815f, 11673.5859f); |
3681 path.quadTo(809.17157f, 11673, 810, 11673); | 3679 path.quadTo(809.17157f, 11673, 810, 11673); |
3682 path.lineTo(1032, 11673); | 3680 path.lineTo(1032, 11673); |
3683 path.quadTo(1038.21326f, 11673, 1042.60657f, 11677.3936f); | 3681 path.quadTo(1038.21326f, 11673, 1042.60657f, 11677.3936f); |
3684 path.quadTo(1047, 11681.7871f, 1047, 11688); | 3682 path.quadTo(1047, 11681.7871f, 1047, 11688); |
3685 path.quadTo(1047, 11682.2012f, 1042.60657f, 11678.1006f); | 3683 path.quadTo(1047, 11682.2012f, 1042.60657f, 11678.1006f); |
3686 path.quadTo(1038.21326f, 11674, 1032, 11674); | 3684 path.quadTo(1038.21326f, 11674, 1032, 11674); |
(...skipping 15 matching lines...) Expand all Loading... |
3702 path.quadTo(808, 11674.1719f, 808.585815f, 11673.5859f); | 3700 path.quadTo(808, 11674.1719f, 808.585815f, 11673.5859f); |
3703 path.close(); | 3701 path.close(); |
3704 SkPath pathB; | 3702 SkPath pathB; |
3705 pathB.setFillType(SkPath::kWinding_FillType); | 3703 pathB.setFillType(SkPath::kWinding_FillType); |
3706 pathB.moveTo(808, 11703); | 3704 pathB.moveTo(808, 11703); |
3707 pathB.lineTo(809.5f, 11701.5f); | 3705 pathB.lineTo(809.5f, 11701.5f); |
3708 pathB.lineTo(1062.91907f, 11687.0811f); | 3706 pathB.lineTo(1062.91907f, 11687.0811f); |
3709 pathB.lineTo(1047, 11703); | 3707 pathB.lineTo(1047, 11703); |
3710 testPathOp(reporter, path, pathB, kIntersect_PathOp, filename); | 3708 testPathOp(reporter, path, pathB, kIntersect_PathOp, filename); |
3711 } | 3709 } |
3712 #endif | |
3713 | 3710 |
3714 // addSimpleAngle: failed assertion "index == count() - 2" | 3711 // addSimpleAngle: failed assertion "index == count() - 2" |
3715 static void skpwww_shinydemos_com_5(skiatest::Reporter* reporter, const char* fi
lename) { | 3712 static void skpwww_shinydemos_com_5(skiatest::Reporter* reporter, const char* fi
lename) { |
3716 SkPath path; | 3713 SkPath path; |
3717 path.setFillType(SkPath::kEvenOdd_FillType); | 3714 path.setFillType(SkPath::kEvenOdd_FillType); |
3718 path.moveTo(205.884888f, 648.203857f); | 3715 path.moveTo(205.884888f, 648.203857f); |
3719 path.lineTo(771.570374f, 82.5183716f); | 3716 path.lineTo(771.570374f, 82.5183716f); |
3720 path.lineTo(1110.98169f, 421.929626f); | 3717 path.lineTo(1110.98169f, 421.929626f); |
3721 path.lineTo(545.296143f, 987.615112f); | 3718 path.lineTo(545.296143f, 987.615112f); |
3722 path.lineTo(205.884888f, 648.203857f); | 3719 path.lineTo(205.884888f, 648.203857f); |
(...skipping 34 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
3757 pathB.lineTo(344.333344f, 1465.66675f); | 3754 pathB.lineTo(344.333344f, 1465.66675f); |
3758 pathB.cubicTo(344.333344f, 1467.32361f, 342.840942f, 1468.66675f, 341, 1468.
66675f); | 3755 pathB.cubicTo(344.333344f, 1467.32361f, 342.840942f, 1468.66675f, 341, 1468.
66675f); |
3759 pathB.lineTo(81, 1468.66675f); | 3756 pathB.lineTo(81, 1468.66675f); |
3760 pathB.cubicTo(79.15905f, 1468.66675f, 77.6666718f, 1467.32361f, 77.6666718f,
1465.66675f); | 3757 pathB.cubicTo(79.15905f, 1468.66675f, 77.6666718f, 1467.32361f, 77.6666718f,
1465.66675f); |
3761 pathB.lineTo(77.6666718f, 1396.66675f); | 3758 pathB.lineTo(77.6666718f, 1396.66675f); |
3762 pathB.cubicTo(77.6666718f, 1394.82568f, 79.15905f, 1393.33337f, 81, 1393.333
37f); | 3759 pathB.cubicTo(77.6666718f, 1394.82568f, 79.15905f, 1393.33337f, 81, 1393.333
37f); |
3763 pathB.close(); | 3760 pathB.close(); |
3764 testPathOp(reporter, path, pathB, kIntersect_PathOp, filename); | 3761 testPathOp(reporter, path, pathB, kIntersect_PathOp, filename); |
3765 } | 3762 } |
3766 | 3763 |
| 3764 #if TEST_NEW_FAILURES |
| 3765 // SkOpSegment.cpp:3915: failed assertion "otherEnd >= 0" |
| 3766 static void skpwww_shinydemos_com_15(skiatest::Reporter* reporter, const char* f
ilename) { |
| 3767 SkPath path; |
| 3768 path.setFillType(SkPath::kEvenOdd_FillType); |
| 3769 path.moveTo(1000, 310.947968f); |
| 3770 path.lineTo(771.570374f, 82.5183716f); |
| 3771 path.lineTo(205.884888f, 648.203857f); |
| 3772 path.lineTo(448.68103f, 891); |
| 3773 path.lineTo(641.911255f, 891); |
| 3774 path.lineTo(1000, 532.911316f); |
| 3775 path.lineTo(1000, 310.947968f); |
| 3776 path.close(); |
| 3777 SkPath pathB; |
| 3778 pathB.setFillType(SkPath::kWinding_FillType); |
| 3779 pathB.moveTo(771.570374f, 82.5183716f); |
| 3780 pathB.lineTo(1110.98169f, 421.929626f); |
| 3781 pathB.lineTo(545.296204f, 987.615051f); |
| 3782 pathB.lineTo(205.884949f, 648.203796f); |
| 3783 pathB.close(); |
| 3784 testPathOp(reporter, path, pathB, kIntersect_PathOp, filename); |
| 3785 } |
| 3786 |
| 3787 // SkOpSegment.cpp:4398: failed assertion "!span->fDone" |
| 3788 static void skpwww_lptemp_com_5(skiatest::Reporter* reporter, const char* filena
me) { |
| 3789 SkPath path; |
| 3790 path.setFillType(SkPath::kEvenOdd_FillType); |
| 3791 path.moveTo(78.6429825f, 3150.97632f); |
| 3792 path.quadTo(79.6192932f, 3150, 81.0000076f, 3150); |
| 3793 path.lineTo(341, 3150); |
| 3794 path.quadTo(342.380707f, 3150, 343.357025f, 3150.97632f); |
| 3795 path.quadTo(344.333344f, 3151.95264f, 344.333344f, 3153.33325f); |
| 3796 path.lineTo(344.333344f, 5205.3335f); |
| 3797 path.quadTo(344.333344f, 5206.71436f, 343.357025f, 5207.69092f); |
| 3798 path.quadTo(342.380707f, 5208.66699f, 341, 5208.66699f); |
| 3799 path.lineTo(81.0000076f, 5208.66699f); |
| 3800 path.quadTo(79.6192932f, 5208.66699f, 78.6429825f, 5207.69092f); |
| 3801 path.quadTo(77.6666718f, 5206.71436f, 77.6666718f, 5205.3335f); |
| 3802 path.lineTo(77.6666718f, 3153.33325f); |
| 3803 path.quadTo(77.6666718f, 3151.95264f, 78.6429825f, 3150.97632f); |
| 3804 path.close(); |
| 3805 SkPath pathB; |
| 3806 pathB.setFillType(SkPath::kEvenOdd_FillType); |
| 3807 pathB.moveTo(81, 3150); |
| 3808 pathB.lineTo(341, 3150); |
| 3809 pathB.cubicTo(342.840942f, 3150, 344.333344f, 3151.49268f, 344.333344f, 3153
.3335f); |
| 3810 pathB.lineTo(344.333344f, 5205.3335f); |
| 3811 pathB.cubicTo(344.333344f, 5206.99023f, 342.840942f, 5208.3335f, 341, 5208.3
335f); |
| 3812 pathB.lineTo(81, 5208.3335f); |
| 3813 pathB.cubicTo(79.15905f, 5208.3335f, 77.6666718f, 5206.99023f, 77.6666718f,
5205.3335f); |
| 3814 pathB.lineTo(77.6666718f, 3153.3335f); |
| 3815 pathB.cubicTo(77.6666718f, 3151.49268f, 79.15905f, 3150, 81, 3150); |
| 3816 pathB.close(); |
| 3817 testPathOp(reporter, path, pathB, kIntersect_PathOp, filename); |
| 3818 } |
| 3819 #endif |
| 3820 |
3767 static void (*firstTest)(skiatest::Reporter* , const char* filename) = 0; | 3821 static void (*firstTest)(skiatest::Reporter* , const char* filename) = 0; |
3768 | 3822 |
3769 static struct TestDesc tests[] = { | 3823 static struct TestDesc tests[] = { |
3770 TEST(skpwww_lptemp_com_3), | 3824 TEST(skpwww_lptemp_com_3), |
3771 TEST(skpwww_shinydemos_com_5), | 3825 TEST(skpwww_shinydemos_com_5), |
3772 #if TEST_NEW_FAILURES | 3826 #if TEST_NEW_FAILURES |
| 3827 TEST(skpwww_lptemp_com_5), |
| 3828 TEST(skpwww_shinydemos_com_15), |
3773 TEST(skpwww_familysurvivalprotocol_wordpress_com_61), | 3829 TEST(skpwww_familysurvivalprotocol_wordpress_com_61), |
3774 TEST(skpwww_alamdi_com_3), | 3830 TEST(skpwww_alamdi_com_3), |
3775 TEST(skpwww_devbridge_com_22), | 3831 TEST(skpwww_devbridge_com_22), |
| 3832 #endif |
| 3833 TEST(skpwww_firstunitedbank_com_19), |
3776 TEST(skpwww_googleventures_com_32), | 3834 TEST(skpwww_googleventures_com_32), |
3777 #endif | |
3778 TEST(skpwww_9to5mac_com_64), | 3835 TEST(skpwww_9to5mac_com_64), |
3779 TEST(skpwww_wartepop_blogspot_com_br_6), | 3836 TEST(skpwww_wartepop_blogspot_com_br_6), |
3780 TEST(skpwww_wartepop_blogspot_com_br_6a), | 3837 TEST(skpwww_wartepop_blogspot_com_br_6a), |
3781 TEST(skpwww_cooksnaps_com_32a), | 3838 TEST(skpwww_cooksnaps_com_32a), |
3782 TEST(skpwww_argus_presse_fr_41), | 3839 TEST(skpwww_argus_presse_fr_41), |
3783 TEST(skpwww_cooksnaps_com_17), | 3840 TEST(skpwww_cooksnaps_com_17), |
3784 TEST(skpwww_cooksnaps_com_32), | 3841 TEST(skpwww_cooksnaps_com_32), |
3785 TEST(skpwww_kitcheninspirations_wordpress_com_66), | 3842 TEST(skpwww_kitcheninspirations_wordpress_com_66), |
3786 TEST(skpwww_tcmevents_org_13), | 3843 TEST(skpwww_tcmevents_org_13), |
3787 TEST(skpwww_narayana_publishers_com_194), | 3844 TEST(skpwww_narayana_publishers_com_194), |
(...skipping 98 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
3886 | 3943 |
3887 static bool runReverse = false; | 3944 static bool runReverse = false; |
3888 static void (*stopTest)(skiatest::Reporter* , const char* filename) = 0; | 3945 static void (*stopTest)(skiatest::Reporter* , const char* filename) = 0; |
3889 | 3946 |
3890 DEF_TEST(PathOpsSkp, reporter) { | 3947 DEF_TEST(PathOpsSkp, reporter) { |
3891 #if DEBUG_SHOW_TEST_NAME | 3948 #if DEBUG_SHOW_TEST_NAME |
3892 strncpy(DEBUG_FILENAME_STRING, "", DEBUG_FILENAME_STRING_LENGTH); | 3949 strncpy(DEBUG_FILENAME_STRING, "", DEBUG_FILENAME_STRING_LENGTH); |
3893 #endif | 3950 #endif |
3894 RunTestSet(reporter, tests, testCount, firstTest, stopTest, runReverse); | 3951 RunTestSet(reporter, tests, testCount, firstTest, stopTest, runReverse); |
3895 } | 3952 } |
OLD | NEW |