+# Copyright (C) 2014-2022 CEA/DEN, EDF R&D
+#
+# This library is free software; you can redistribute it and/or
+# modify it under the terms of the GNU Lesser General Public
+# License as published by the Free Software Foundation; either
+# version 2.1 of the License, or (at your option) any later version.
+#
+# This library is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this library; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+#
+# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+#
+
"""
TestRectangle.py
Unit test of SketchPlugin_Ractangle class
from GeomDataAPI import *
from ModelAPI import *
import math
+from salome.shaper import model
+
#=========================================================================
# Initialization of the test
#=========================================================================
#=========================================================================
aSession.startOperation()
aRectangle = aSketchFeature.addFeature("SketchRectangle")
+aRectangle.string("RectangleType").setValue("RectangleTypeByCorners")
aStartCorner = geomDataAPI_Point2D(aRectangle.attribute("RectStartPoint"))
aEndCorner = geomDataAPI_Point2D(aRectangle.attribute("RectEndPoint"))
aStartCorner.setValue(10., 10.)
assert (isHorizontal(aLastLine) or isVertical(aLastLine))
aNbLines = aNbLines + 1
assert (aNbLines == 4)
+assert (model.dof(aSketchFeature) == 4)
#=========================================================================
# Move one of lines
#=========================================================================
#=========================================================================
# Check the lines of rectangle are parallel to the axes
#=========================================================================
-#aNbSubs = aSketchFeature.numberOfSubs()
-#aNbLines = 0
-#for i in range (0, aNbSubs):
-# aFeature = objectToFeature(aSketchFeature.subFeature(i))
-# if aFeature.getKind() == "SketchLine":
-# aLastLine = aFeature
-# assert (isHorizontal(aLastLine) or isVertical(aLastLine))
-# aNbLines = aNbLines + 1
-#assert (aNbLines == 4)
+aNbSubs = aSketchFeature.numberOfSubs()
+aNbLines = 0
+for i in range (0, aNbSubs):
+ aFeature = objectToFeature(aSketchFeature.subFeature(i))
+ if aFeature.getKind() == "SketchLine":
+ aLastLine = aFeature
+ assert (isHorizontal(aLastLine) or isVertical(aLastLine))
+ aNbLines = aNbLines + 1
+assert (aNbLines == 4)
+assert (model.dof(aSketchFeature) == 4)
#=========================================================================
# End of test
#=========================================================================
+
+assert(model.checkPythonDump())