Salome HOME
Update copyrights
[modules/shaper.git] / src / ModelAPI / Test / TestDocument.py
index e0f7da4be1b910f394de5d1502248c4733531652..5b6312fed09249965afad9359ba55502915fbe36 100644 (file)
@@ -1,14 +1,32 @@
+# Copyright (C) 2014-2019  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
+#
+
 """
       TestDocument.py
       Unit test for Model_Document/ModelAPI_Document class
-      
+
 """
 #=========================================================================
 # Initialization of the test
 #=========================================================================
 from ModelAPI import *
-# from GeomDataAPI import *
-# from GeomAlgoAPI import *
+from GeomDataAPI import *
 
 __updated__ = "2014-12-26"
 
@@ -16,9 +34,8 @@ __updated__ = "2014-12-26"
 # Creation and activation of documents
 #=========================================================================
 aSession = ModelAPI_Session.get()
-# TODO: enable this assertion:
 assert(aSession.moduleDocument())
-assert(aSession.moduleDocument().id() == "root")
+assert(aSession.moduleDocument().id() == 0)
 assert(aSession.moduleDocument().kind() == "PartSet")
 assert(aSession.hasModuleDocument())
 # Create a new document
@@ -27,22 +44,22 @@ aSession.moduleDocument().addFeature("Part")
 aSession.finishOperation()
 
 assert(aSession.activeDocument())
-assert(aSession.activeDocument().id() == "Part_1")
+assert(aSession.activeDocument().id() == 1)
 assert(aSession.activeDocument().kind() == "Part")
 # Activate root doc
-aRootDoc = aSession.document("root")
+aRootDoc = aSession.document(0)
 assert(aRootDoc)
 aSession.startOperation()
 aSession.setActiveDocument(aRootDoc, False)
 aSession.finishOperation()
 assert(aSession.activeDocument())
-assert(aSession.activeDocument().id() == "root")
+assert(aSession.activeDocument().id() == 0)
 # check all opened docs
 allDocsList = aSession.allOpenedDocuments()
 assert(len(allDocsList) != 0)
 # Activate Part_1 doc back for further testing
 aSession.startOperation()
-aSession.setActiveDocument(aSession.document("Part_1"), False)
+aSession.setActiveDocument(aSession.document(1), False)
 aSession.finishOperation()
 #=========================================================================
 # Duplication of a document
@@ -54,9 +71,7 @@ aSession.startOperation()
 aFeature = aPart.addFeature("Point")
 aFeatureData = aFeature.data()
 assert(aFeatureData is not None)
-aFeatureData.real("x").setValue(15.)
-aFeatureData.real("y").setValue(10.)
-aFeatureData.real("z").setValue(20.)
+geomDataAPI_Point(aFeatureData.attribute("point3d")).setValue(15., 10., 20.)
 aSession.finishOperation()
 assert(aPart.size("Features") == 1)
 # Duplicate the document
@@ -66,7 +81,7 @@ aPart.addFeature("Duplicate")
 aSession.finishOperation()
 assert(aSession.moduleDocument().size("Parts") == 2)
 aCopyOfPart = aSession.activeDocument()
-assert(aCopyOfPart.id() == "Part_2")
+assert(aCopyOfPart.id() == 2)
 assert(aCopyOfPart.kind() == "Part")
 assert(aCopyOfPart.size("Features") == 1)
 assert(aCopyOfPart != aPart)
@@ -77,13 +92,17 @@ assert(aSession.moduleDocument().size("Parts") == 2)
 aSession.startOperation()
 aPart.addFeature("Remove")
 aSession.finishOperation()
+# First part is deleted, but active is Part_2, so, it is still active
 assert(aSession.moduleDocument().size("Parts") == 1)
-assert(aSession.activeDocument().id() == aSession.moduleDocument().id())
+assert(aSession.activeDocument().id() == aCopyOfPart.id())
 # Remove another one document
 aSession.startOperation()
-aDoc1 = aSession.document("Part_1")
-aSession.setActiveDocument(aDoc1, False)
-aDoc1.addFeature("Remove")
+aDoc2 = aSession.document(2)
+aSession.setActiveDocument(aDoc2, False)
+aDoc2.addFeature("Remove")
 aSession.finishOperation()
 assert(aSession.moduleDocument().size("Parts") == 0)
 assert(aSession.activeDocument())
+
+from salome.shaper import model
+assert(model.checkPythonDump())