Salome HOME
bug fix for bos#37741: EDF 28623 : import fails with accent characters
[modules/shaper.git] / src / SketchPlugin / Test / TestRectangle.py
index dbd36b133877562b7eb526d08a0f067e2c63d0f8..56cf14ff46b3f3860a26af55b5e3a073d2574897 100644 (file)
@@ -1,4 +1,4 @@
-# Copyright (C) 2014-2019  CEA/DEN, EDF R&D
+# Copyright (C) 2014-2023  CEA, EDF
 #
 # This library is free software; you can redistribute it and/or
 # modify it under the terms of the GNU Lesser General Public
@@ -19,7 +19,7 @@
 
 """
     TestRectangle.py
-    Unit test of SketchPlugin_Ractangle class
+    Unit test of SketchPlugin_Rectangle class
 
 """
 from GeomDataAPI import *
@@ -70,6 +70,7 @@ aSession.finishOperation()
 #=========================================================================
 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.)
@@ -87,27 +88,32 @@ for i in range (0, aNbSubs):
         assert (isHorizontal(aLastLine) or isVertical(aLastLine))
         aNbLines = aNbLines + 1
 assert (aNbLines == 4)
-assert (model.dof(aSketchFeature) == 4)
+assert (model.dof(aSketchFeature) == 5)
 #=========================================================================
 # Move one of lines
 #=========================================================================
 aSession.startOperation()
 aLineEnd = geomDataAPI_Point2D(aLastLine.attribute("EndPoint"))
-aLineEnd.setValue(50., 50.)
+aLineEnd.setValue(41., 30.)
 aSession.finishOperation()
 #=========================================================================
 # Check the lines of rectangle are parallel to the axes
 #=========================================================================
 aNbSubs = aSketchFeature.numberOfSubs()
 aNbLines = 0
+tolerance = 1.e-5
+valref = [28.47721, 1.3352780]
 for i in range (0, aNbSubs):
     aFeature = objectToFeature(aSketchFeature.subFeature(i))
     if aFeature.getKind() == "SketchLine":
         aLastLine = aFeature
-        assert (isHorizontal(aLastLine) or isVertical(aLastLine))
+        #print (aLastLine.lastResult().shape().edge().length())
+        #print (valref[i%2])
+        #print (abs(aLastLine.lastResult().shape().edge().length()-valref[i%2]))
+        assert(abs(aLastLine.lastResult().shape().edge().length()-valref[i%2]) <= tolerance)
         aNbLines = aNbLines + 1
 assert (aNbLines == 4)
-assert (model.dof(aSketchFeature) == 4)
+assert (model.dof(aSketchFeature) == 5)
 #=========================================================================
 # End of test
 #=========================================================================