1 /* 2 * Copyright (c) 2016 Dmitry Kazakov <dimula73@gmail.com> 3 * 4 * This program is free software; you can redistribute it and/or modify 5 * it under the terms of the GNU General Public License as published by 6 * the Free Software Foundation; either version 2 of the License, or 7 * (at your option) any later version. 8 * 9 * This program is distributed in the hope that it will be useful, 10 * but WITHOUT ANY WARRANTY; without even the implied warranty of 11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 12 * GNU General Public License for more details. 13 * 14 * You should have received a copy of the GNU General Public License 15 * along with this program; if not, write to the Free Software 16 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. 17 */ 18 19 #ifndef TESTSVGPARSER_H 20 #define TESTSVGPARSER_H 21 22 #include <QtTest> 23 24 class TestSvgParser : public QObject 25 { 26 Q_OBJECT 27 private Q_SLOTS: 28 29 void testUnitPx(); 30 void testUnitPxResolution(); 31 void testUnitPt(); 32 void testUnitIn(); 33 void testUnitPercentInitial(); 34 void testScalingViewport(); 35 void testScalingViewportKeepMeet1(); 36 void testScalingViewportKeepMeet2(); 37 void testScalingViewportKeepMeetAlign(); 38 void testScalingViewportKeepSlice1(); 39 void testScalingViewportKeepSlice2(); 40 void testScalingViewportResolution(); 41 void testScalingViewportPercentInternal(); 42 void testParsePreserveAspectRatio(); 43 void testParseTransform(); 44 45 void testScalingViewportTransform(); 46 void testTransformNesting(); 47 void testTransformNestingGroups(); 48 void testTransformRotation1(); 49 void testTransformRotation2(); 50 51 void testRenderStrokeNone(); 52 void testRenderStrokeColorName(); 53 void testRenderStrokeColorHex3(); 54 void testRenderStrokeColorHex6(); 55 void testRenderStrokeColorRgbValues(); 56 void testRenderStrokeColorRgbPercent(); 57 void testRenderStrokeColorCurrent(); 58 void testRenderStrokeColorNonexistentIri(); 59 60 void testRenderStrokeWidth(); 61 void testRenderStrokeZeroWidth(); 62 void testRenderStrokeOpacity(); 63 64 void testRenderStrokeJointRound(); 65 void testRenderStrokeLinecap(); 66 void testRenderStrokeMiterLimit(); 67 68 void testRenderStrokeDashArrayEven(); 69 void testRenderStrokeDashArrayEvenOffset(); 70 void testRenderStrokeDashArrayOdd(); 71 void testRenderStrokeDashArrayRelative(); 72 73 74 void testRenderFillDefault(); 75 void testRenderFillRuleNonZero(); 76 void testRenderFillRuleEvenOdd(); 77 void testRenderFillOpacity(); 78 79 void testRenderDisplayAttribute(); 80 void testRenderVisibilityAttribute(); 81 82 void testRenderVisibilityInheritance(); 83 void testRenderDisplayInheritance(); 84 85 void testRenderStrokeWithInlineStyle(); 86 87 void testIccColor(); 88 void testRenderFillLinearGradientRelativePercent(); 89 void testRenderFillLinearGradientRelativePortion(); 90 void testRenderFillLinearGradientUserCoord(); 91 void testRenderFillLinearGradientStopPortion(); 92 void testRenderFillLinearGradientTransform(); 93 void testRenderFillLinearGradientTransformUserCoord(); 94 void testRenderFillLinearGradientRotatedShape(); 95 void testRenderFillLinearGradientRotatedShapeUserCoord(); 96 97 void testRenderFillRadialGradient(); 98 void testRenderFillRadialGradientUserCoord(); 99 100 void testRenderFillLinearGradientUserCoordPercent(); 101 102 void testRenderStrokeLinearGradient(); 103 104 void testRenderMeshGradient_bilinear_1by1_UserCoord(); 105 void testRenderMeshGradient_bicubic_1by1_UserCoord(); 106 void testRenderMeshGradient_bilinear_2by2_UserCoord(); 107 void testRenderMeshGradient_bicubic_2by2_UserCoord(); 108 void testRenderMeshGradient_bilinear_1by1_Obb(); 109 void testRenderMeshGradient_bicubic_2by2_Obb(); 110 void testRenderMeshGradient_MeshTransform_UserCoord(); 111 void testRenderMeshGradient_ShapeTransform_UserCoord(); 112 void testRenderMeshGradient_transparent(); 113 void testRenderMeshGradient_reversed(); 114 void testRenderMeshGradient_MeshTransform_Obb(); 115 void testRenderMeshGradient_ShapeTransform_Obb(); 116 117 void testManualRenderPattern_ContentUser_RefObb(); 118 void testManualRenderPattern_ContentObb_RefObb(); 119 void testManualRenderPattern_ContentUser_RefUser(); 120 121 void testManualRenderPattern_ContentObb_RefObb_Transform_Rotate(); 122 123 void testManualRenderPattern_ContentView_RefObb(); 124 125 void testManualRenderPattern_ContentView_RefUser(); 126 127 void testRenderPattern_r_User_c_User(); 128 void testRenderPattern_InfiniteRecursionWhenInherited(); 129 void testRenderPattern_r_User_c_View(); 130 void testRenderPattern_r_User_c_Obb(); 131 132 void testRenderPattern_r_User_c_View_Rotated(); 133 void testRenderPattern_r_Obb_c_View_Rotated(); 134 135 void testKoClipPathRendering(); 136 void testKoClipPathRelativeRendering(); 137 138 void testRenderClipPath_User(); 139 void testRenderClipPath_Obb(); 140 void testRenderClipPath_Obb_Transform(); 141 142 void testRenderClipMask_Obb(); 143 void testRenderClipMaskOnGroup_Obb(); 144 void testRenderClipMask_User_Clip_Obb(); 145 void testRenderClipMask_User_Clip_User(); 146 147 void testRenderImage_AspectDefault(); 148 void testRenderImage_AspectNone(); 149 void testRenderImage_AspectMeet(); 150 151 void testRectShapeRoundUniformX(); 152 void testRectShapeRoundUniformY(); 153 void testRectShapeRoundXY(); 154 void testRectShapeRoundXYOverflow(); 155 156 void testCircleShape(); 157 void testEllipseShape(); 158 void testLineShape(); 159 void testPolylineShape(); 160 void testPolygonShape(); 161 162 void testPathShape(); 163 164 void testDefsHidden(); 165 void testDefsUseInheritance(); 166 void testUseWithoutDefs(); 167 168 void testMarkersAutoOrientation(); 169 void testMarkersAutoOrientationScaled(); 170 void testMarkersAutoOrientationScaledUserCoordinates(); 171 void testMarkersCustomOrientation(); 172 173 void testMarkersDifferent(); 174 175 void testGradientRecoveringTransform(); 176 void testMarkersOnClosedPath(); 177 void testMarkersAngularUnits(); 178 179 void testSodipodiArcShape(); 180 void testSodipodiArcShapeOpen(); 181 void testKritaChordShape(); 182 void testSodipodiChordShape(); 183 184 void testMarkersFillAsShape(); 185 private: 186 187 }; 188 189 #endif // TESTSVGPARSER_H 190