Salome HOME
Make big models naming work correctly: piece_12.py , flange.py
[modules/shaper.git] / src / ModelAPI / Test / TestFolder_Stability.py
index 9ceb2ee3e366935017a7d433b0b0aa6299781260..e6a86c297baf3186b97327d1be27392131c82ea2 100644 (file)
@@ -22,6 +22,7 @@
 # Test checks stability of the foldering mechanism due to incorrect input parameters
 #=========================================================================
 from ModelAPI import *
+from GeomDataAPI import *
 
 __updated__ = "2017-11-23"
 
@@ -33,9 +34,7 @@ def newPoint(theDocument, theX, theY, theZ):
     aPoint = theDocument.addFeature("Point")
     aPointData = aPoint.data()
     assert(aPointData is not None)
-    aPointData.real("x").setValue(theX)
-    aPointData.real("y").setValue(theY)
-    aPointData.real("z").setValue(theZ)
+    geomDataAPI_Point(aPointData.attribute("point3d")).setValue(theX, theY, theZ)
     aPointData.string("creation_method").setValue("by_xyz")
     aSession.finishOperation()
     return aPoint
@@ -64,11 +63,31 @@ assert(aPartDoc.size("Features") == NB_FEATURES_FULL), "Wrong number of features
 
 #=========================================================================
 # Test 1. Check number of features out of folder
-#         and absense of the crash while getting size of incorrect groupd
+#         and absense of the crash while getting size of incorrect group
 #=========================================================================
 assert(aPartDoc.size("Features", True) == NB_FEATURES_OUT), "Wrong number of features: {}, expected: {}".format(aPartDoc.size("Features", True), NB_FEATURES_OUT)
 assert(aPartDoc.size("Construction", True) == 1), "Wrong size: {}".format(aPartDoc.size("Construction", True))
 
+#=========================================================================
+# Test 2. Add a feature to the folder and check number of features once again
+#=========================================================================
+toFolder = FeatureList()
+toFolder.append(aPoint1)
+
+aSession.startOperation()
+aFolder2 = aPartDoc.addFolder(aPoint1)
+aSession.finishOperation()
+
+NB_FEATURES_FULL += 1
+NB_FEATURES_OUT  += 1
 
-from salome.shaper import model
-assert(model.checkPythonDump())
+aSession.startOperation()
+aFolder = aPartDoc.findFolderAbove(toFolder)
+assert(aFolder is not None)
+isAdded = aPartDoc.moveToFolder(toFolder, aFolder)
+aSession.finishOperation()
+assert(isAdded)
+
+NB_FEATURES_OUT -= 1
+assert(aPartDoc.size("Features", True) == NB_FEATURES_OUT), "Wrong number of features: {}, expected: {}".format(aPartDoc.size("Features", True), NB_FEATURES_OUT)
+assert(aPartDoc.size("Construction", True) == 1), "Wrong size: {}".format(aPartDoc.size("Construction", True))