Salome HOME
Improve code coverage for AttributeRefAttrList.
[modules/shaper.git] / src / SketchPlugin / CMakeLists.txt
1 # Copyright (C) 2014-2019  CEA/DEN, EDF R&D
2 #
3 # This library is free software; you can redistribute it and/or
4 # modify it under the terms of the GNU Lesser General Public
5 # License as published by the Free Software Foundation; either
6 # version 2.1 of the License, or (at your option) any later version.
7 #
8 # This library is distributed in the hope that it will be useful,
9 # but WITHOUT ANY WARRANTY; without even the implied warranty of
10 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
11 # Lesser General Public License for more details.
12 #
13 # You should have received a copy of the GNU Lesser General Public
14 # License along with this library; if not, write to the Free Software
15 # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
16 #
17 # See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
18 #
19
20 INCLUDE(Common)
21 INCLUDE(UnitTest)
22
23 SET(PROJECT_HEADERS
24     SketchPlugin.h
25     SketchPlugin_Arc.h
26     SketchPlugin_BSpline.h
27     SketchPlugin_BSplineBase.h
28     SketchPlugin_BSplinePeriodic.h
29     SketchPlugin_Circle.h
30     SketchPlugin_Constraint.h
31     SketchPlugin_ConstraintAngle.h
32     SketchPlugin_ConstraintBase.h
33     SketchPlugin_ConstraintCoincidence.h
34     SketchPlugin_ConstraintCoincidenceInternal.h
35     SketchPlugin_ConstraintCollinear.h
36     SketchPlugin_ConstraintDistance.h
37     SketchPlugin_ConstraintDistanceAlongDir.h
38     SketchPlugin_ConstraintDistanceHorizontal.h
39     SketchPlugin_ConstraintDistanceVertical.h
40     SketchPlugin_ConstraintEqual.h
41     SketchPlugin_Fillet.h
42     SketchPlugin_ConstraintHorizontal.h
43     SketchPlugin_ConstraintLength.h
44     SketchPlugin_ConstraintMiddle.h
45     SketchPlugin_ConstraintMirror.h
46     SketchPlugin_ConstraintParallel.h
47     SketchPlugin_ConstraintPerpendicular.h
48     SketchPlugin_ConstraintRadius.h
49     SketchPlugin_ConstraintRigid.h
50     SketchPlugin_ConstraintTangent.h
51     SketchPlugin_ConstraintVertical.h
52     SketchPlugin_Ellipse.h
53     SketchPlugin_EllipticArc.h
54     SketchPlugin_ExternalValidator.h
55     SketchPlugin_Feature.h
56     SketchPlugin_IntersectionPoint.h
57     SketchPlugin_Line.h
58     SketchPlugin_MacroArc.h
59     SketchPlugin_MacroArcReentrantMessage.h
60     SketchPlugin_MacroBSpline.h
61     SketchPlugin_MacroCircle.h
62     SketchPlugin_MacroEllipse.h
63     SketchPlugin_MacroEllipticArc.h
64     SketchPlugin_MultiRotation.h
65     SketchPlugin_MultiTranslation.h
66     SketchPlugin_Plugin.h
67     SketchPlugin_Point.h
68     SketchPlugin_Projection.h
69     SketchPlugin_Sketch.h
70     SketchPlugin_SketchDrawer.h
71     SketchPlugin_SketchEntity.h
72     SketchPlugin_Split.h
73     SketchPlugin_Tools.h
74     SketchPlugin_Trim.h
75     SketchPlugin_Validators.h
76 )
77
78 SET(PROJECT_SOURCES
79     SketchPlugin_Arc.cpp
80     SketchPlugin_BSpline.cpp
81     SketchPlugin_BSplineBase.cpp
82     SketchPlugin_BSplinePeriodic.cpp
83     SketchPlugin_Circle.cpp
84     SketchPlugin_Constraint.cpp
85     SketchPlugin_ConstraintAngle.cpp
86     SketchPlugin_ConstraintCoincidence.cpp
87     SketchPlugin_ConstraintCoincidenceInternal.cpp
88     SketchPlugin_ConstraintCollinear.cpp
89     SketchPlugin_ConstraintDistance.cpp
90     SketchPlugin_ConstraintDistanceAlongDir.cpp
91     SketchPlugin_ConstraintDistanceHorizontal.cpp
92     SketchPlugin_ConstraintDistanceVertical.cpp
93     SketchPlugin_ConstraintEqual.cpp
94     SketchPlugin_Fillet.cpp
95     SketchPlugin_ConstraintHorizontal.cpp
96     SketchPlugin_ConstraintLength.cpp
97     SketchPlugin_ConstraintMiddle.cpp
98     SketchPlugin_ConstraintMirror.cpp
99     SketchPlugin_ConstraintParallel.cpp
100     SketchPlugin_ConstraintPerpendicular.cpp
101     SketchPlugin_ConstraintRadius.cpp
102     SketchPlugin_ConstraintRigid.cpp
103     SketchPlugin_ConstraintTangent.cpp
104     SketchPlugin_ConstraintVertical.cpp
105     SketchPlugin_Ellipse.cpp
106     SketchPlugin_EllipticArc.cpp
107     SketchPlugin_ExternalValidator.cpp
108     SketchPlugin_Feature.cpp
109     SketchPlugin_IntersectionPoint.cpp
110     SketchPlugin_Line.cpp
111     SketchPlugin_MacroArc.cpp
112     SketchPlugin_MacroBSpline.cpp
113     SketchPlugin_MacroCircle.cpp
114     SketchPlugin_MacroEllipse.cpp
115     SketchPlugin_MacroEllipticArc.cpp
116     SketchPlugin_MultiRotation.cpp
117     SketchPlugin_MultiTranslation.cpp
118     SketchPlugin_Plugin.cpp
119     SketchPlugin_Point.cpp
120     SketchPlugin_Projection.cpp
121     SketchPlugin_Sketch.cpp
122     SketchPlugin_SketchDrawer.cpp
123     SketchPlugin_SketchEntity.cpp
124     SketchPlugin_Split.cpp
125     SketchPlugin_Tools.cpp
126     SketchPlugin_Trim.cpp
127     SketchPlugin_Validators.cpp
128 )
129
130 SET(PROJECT_LIBRARIES
131     Config
132     GeomAPI
133     GeomAlgoAPI
134     ModelAPI
135     ModelGeomAlgo
136     ModuleBase
137     SketcherPrs
138     GeomDataAPI
139 )
140
141 SET(XML_RESOURCES
142   plugin-Sketch.xml
143   plugin-SketchDrawer.xml
144 )
145
146 SET(TEXT_RESOURCES
147     SketchPlugin_msg_en.ts
148     SketchPlugin_msg_fr.ts
149 )
150
151 # sources / moc wrappings
152 QT_WRAP_MOC(PROJECT_AUTOMOC ${PROJECT_MOC_HEADERS})
153
154 SOURCE_GROUP ("Generated Files" FILES ${PROJECT_AUTOMOC})
155 SOURCE_GROUP ("Resource Files" FILES ${TEXT_RESOURCES})
156
157 ADD_DEFINITIONS(-DSKETCHPLUGIN_EXPORTS)
158 ADD_LIBRARY(SketchPlugin MODULE ${PROJECT_SOURCES} ${PROJECT_HEADERS} ${XML_RESOURCES} ${TEXT_RESOURCES} ${PROJECT_AUTOMOC})
159 TARGET_LINK_LIBRARIES(SketchPlugin ${PROJECT_LIBRARIES})
160
161 INCLUDE_DIRECTORIES(
162   ../Config
163   ../Events
164   ../ModelAPI
165   ../ModelGeomAlgo
166   ../ModuleBase
167   ../GeomAPI
168   ../GeomAlgoAPI
169   ../GeomDataAPI
170   ../SketcherPrs
171   ${OpenCASCADE_INCLUDE_DIR}
172 )
173
174 INSTALL(TARGETS SketchPlugin DESTINATION ${SHAPER_INSTALL_PLUGIN_FILES})
175 INSTALL(FILES ${XML_RESOURCES} DESTINATION ${SHAPER_INSTALL_XML_RESOURCES})
176 INSTALL(DIRECTORY icons/ DESTINATION ${SHAPER_INSTALL_XML_RESOURCES}/icons/Sketch)
177 INSTALL(FILES ${TEXT_RESOURCES} DESTINATION ${SHAPER_INSTALL_XML_RESOURCES})
178
179 ADD_UNIT_TESTS(
180   Test1061.py
181   Test1577.py
182   Test1578.py
183   Test1673.py
184   Test1779.py
185   Test1924.py
186   Test1963.py
187   Test1966.py
188   Test1967.py
189   Test2034_1.py
190   Test2034_2.py
191   Test2034_3.py
192   Test2062.py
193   Test2095.py
194   Test2115.py
195   Test2119.py
196   Test2134.py
197   Test2157.py
198   Test2157_2.py
199   Test2224.py
200   Test2229.py
201   Test2239.py
202   Test2273.py
203   Test2280.py
204   Test2287.py
205   Test2341.py
206   Test2376.py
207   Test2390.py
208   Test2393.py
209   Test2425.py
210   Test2427.py
211   Test2440.py
212   Test2481.py
213   Test2654.py
214   Test2711.py
215   Test2741.py
216   Test2810.py
217   Test2824.py
218   Test2860.py
219   Test2894.py
220   Test3019.py
221   Test3087_1.py
222   Test3087_2.py
223   TestArcBehavior.py
224   TestChangeSketchPlane1.py
225   TestChangeSketchPlane2.py
226   TestChangeSketchPlane3.py
227   TestChangeSketchPlane4.py
228   TestConstraintAngle.py
229   TestConstraintAngle_v0_1.py
230   TestConstraintAngle_v0_2.py
231   TestConstraintAngle_v20191210_1.py
232   TestConstraintAngle_v20191210_2.py
233   TestConstraintAngleBehaviorDirect.py
234   TestConstraintAngleBehaviorSupplementary_1.py
235   TestConstraintAngleBehaviorSupplementary_2.py
236   TestConstraintAngleBehaviorBackward_1.py
237   TestConstraintAngleBehaviorBackward_2.py
238   TestConstraintAngleEllipse.py
239   TestConstraintCoincidence.py
240   TestConstraintCoincidenceBSpline.py
241   TestConstraintCoincidenceEllipse.py
242   TestConstraintCoincidenceEllipticArc.py
243   TestConstraintCollinear.py
244   TestConstraintCollinearEllipse.py
245   TestConstraintDistance.py
246   TestConstraintDistanceEllipse.py
247   TestConstraintDistanceBehavior.py
248   TestConstraintDistanceHorizontal.py
249   TestConstraintDistanceVertical.py
250   TestConstraintDistanceZero.py
251   TestConstraintDistanceHorizontalZero.py
252   TestConstraintDistanceVerticalZero.py
253   TestConstraintEqual.py
254   TestConstraintEqualEllipse.py
255   TestConstraintFixed.py
256   TestConstraintHorizontal.py
257   TestConstraintHorizontalValidator.py
258   TestConstraintLength.py
259   TestConstraintMiddlePoint.py
260   TestConstraintMiddlePointOnArc.py
261   TestConstraintMiddlePointOnEllipticArc.py
262   TestConstraintParallel.py
263   TestConstraintPerpendicular.py
264   TestConstraintPerpendicularArcLine.py
265   TestConstraintPerpendicularEllipseLine.py
266   TestConstraintRadius.py
267   TestConstraintRadiusFailure.py
268   TestConstraintTangent.py
269   TestConstraintTangentBSpline.py
270   TestConstraintTangentEllipse.py
271   TestConstraintTangentEllipticArc.py
272   TestConstraintVertical.py
273   TestCreateArcByCenterStartEnd.py
274   TestCreateArcByTangentEdge.py
275   TestCreateArcByThreePoints.py
276   TestCreateArcByTransversalLine.py
277   TestCreateArcChangeType.py
278   TestCreateBSpline.py
279   TestCreateBSplinePeriodic.py
280   TestCreateCircleByCenterAndPassed.py
281   TestCreateCircleByThreePoints.py
282   TestCreateCircleChangeType.py
283   TestCreateEllipseByCenterSemiaxisAndPassed.py
284   TestCreateEllipseByMajorAxisAndPassed.py
285   TestCreateEllipseByExternal.py
286   TestCreateEllipticArc.py
287   TestCreateEllipticArcByExternal.py
288   TestCreateMacroBSpline.py
289   TestDegeneratedGeometry.py
290   TestDistanceDump.py
291   TestDistanceSignedVsUnsigned01.py
292   TestDistanceSignedVsUnsigned02.py
293   TestDistanceSignedVsUnsigned03.py
294   TestDistanceSignedVsUnsigned04.py
295   TestDistanceSignedVsUnsigned05.py
296   TestEdgesOrder.py
297   TestFillet.py
298   TestFilletAfterFolder.py
299   TestFilletInteracting.py
300   TestHighload.py
301   TestIntersectionChangeEdge.py
302   TestIntersectionWithCircle.py
303   TestIntersectionWithLine.py
304   TestIntersectionWithSpline.py
305   TestMirror.py
306   TestMultiRotation.py
307   TestMultiRotation01.py
308   TestMultiRotation02.py
309   TestMultiRotation03.py
310   TestMultiRotation04.py
311   TestMultiRotation05.py
312   TestMultiRotationWithParameter.py
313   TestMultiTranslation.py
314   TestPresentation.py
315   TestProjection.py
316   TestProjectionBSpline.py
317   TestProjectionBSplinePeriodic.py
318   TestProjectionEllipse.py
319   TestProjectionEllipticArc.py
320   TestProjectionIntoResult.py
321   TestProjectionUpdate.py
322   TestRectangle.py
323   TestRemainingDoF.py
324   TestRemoveBSpline.py
325   TestRemoveBSplinePeriodic.py
326   TestRemoveEllipse.py
327   TestRemoveEllipticArc.py
328   TestRemoveSketch.py
329   TestSignedDistancePointLine.py
330   TestSignedDistancePointPoint.py
331   TestSketchDrawer.py
332   TestSketchPointLine.py
333   TestSnowflake.py
334   TestSplit.py
335   TestSplitEllipse.py
336   TestSplitLine.py
337   TestSplitPreview.py
338   TestTrimArc01.py
339   TestTrimArc02.py
340   TestTrimArc03.py
341   TestTrimArc04.py
342   TestTrimArc05.py
343   TestTrimArc06.py
344   TestTrimArc07.py
345   TestTrimArc08.py
346   TestTrimCircle01.py
347   TestTrimCircle02.py
348   TestTrimCircle03.py
349   TestTrimCircle04.py
350   TestTrimCircle05.py
351   TestTrimCircleAndArc01.py
352   TestTrimEllipse.py
353   TestTrimLine01.py
354   TestTrimLine02.py
355   TestTrimLine03.py
356   TestTrimPreview.py
357   TestUpdateSketch.py
358 )
359
360 if(${SKETCHER_CHANGE_RADIUS_WHEN_MOVE})
361   ADD_UNIT_TESTS(
362     TestMoveArc.py
363     TestMoveBSpline.py
364     TestMoveBSplinePeriodic.py
365     TestMoveCircle.py
366     TestMoveEllipse.py
367     TestMoveEllipticArc.py
368     TestMoveLine.py
369     TestMovementComplex.py
370     TestMovePoint.py
371   )
372 endif()