Salome HOME
Destruction d'un cas avec option de menage des maillages produits
[modules/homard.git] / tests / test_3.py
index 36a9e8e32f56ed409f067c4e50b40f923ca4c6d9..390d35e30d0f8d213fa76d0163feb622b5cb7ba1 100644 (file)
@@ -1,5 +1,5 @@
 # -*- coding: iso-8859-1 -*-
-# Copyright (C) 2011-2012  CEA/DEN, EDF R&D
+# Copyright (C) 2011-2013  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
@@ -22,10 +22,11 @@ Python script for HOMARD
 Copyright EDF-R&D 2011, 2013
 Test test_3
 """
-__revision__ = "V1.4"
+__revision__ = "V1.7"
 
 #========================================================================
 Test_Name = "test_3"
+n_boucle = 2
 n_iter_test_file = 2
 #========================================================================
 import os
@@ -98,39 +99,64 @@ Copyright EDF-R&D 2010, 2013
     Hypo = homard.CreateHypothesis('Hypo')
     Hypo.SetAdapRefinUnRef(-1, 1, 0)
 #
-# Creation of the cases
-# =====================
+    for iaux in range (n_boucle+1) :
+#
 # Creation of the case Case_1
-    Case_1 = homard.CreateCase('Case_1', 'MOYEU', os.path.join(Rep_Test, Test_Name + '.00.med'))
-    Case_1.SetDirName(Rep_Test_Resu)
-    Case_1.SetConfType(1)
-    Case_1.AddBoundaryGroup('courbes', '')
-    Case_1.AddBoundaryGroup('cyl_ext', 'EXT')
-    Case_1.AddBoundaryGroup('cyl_int', 'INT')
-    Case_1.AddBoundaryGroup('sphere_1', 'END_1')
-    Case_1.AddBoundaryGroup('sphere_2', 'END_2')
-#
-# Creation of the iterations
-# ==========================
-# Creation of the iteration Iter_1
-    Iter_1 = Case_1.NextIteration('Iter_1')
-    Iter_1.SetMeshName('MOYEU_1')
-    Iter_1.SetMeshFile(os.path.join(Rep_Test_Resu, 'maill.01.med'))
-    Iter_1.AssociateHypo('Hypo')
-    error = Iter_1.Compute(1)
-    if error :
-      error = 1
-      break
+# ===========================
+      if ( iaux <= 1 ) :
+        Case_1 = homard.CreateCase('Case_1', 'MOYEU', os.path.join(Rep_Test, Test_Name + '.00.med'))
+        Case_1.SetDirName(Rep_Test_Resu)
+        Case_1.SetConfType(1)
+        Case_1.AddBoundaryGroup('courbes', '')
+        Case_1.AddBoundaryGroup('cyl_ext', 'EXT')
+        Case_1.AddBoundaryGroup('cyl_int', 'INT')
+        Case_1.AddBoundaryGroup('sphere_1', 'END_1')
+        Case_1.AddBoundaryGroup('sphere_2', 'END_2')
+#
+# Creation and destruction of the iterations
+# ==========================================
+#
+  # Creation of the iteration Iter_1
+      Iter_1 = Case_1.NextIteration('Iter_1')
+      Iter_1.SetMeshName('MOYEU_1')
+      Iter_1.SetMeshFile(os.path.join(Rep_Test_Resu, 'maill.01.med'))
+      Iter_1.AssociateHypo('Hypo')
+      error = Iter_1.Compute(1, 1)
+      if error :
+        error = 10*iaux + 1
+        break
+
+  # Creation of the iteration Iter_2
+      Iter_2 = Iter_1.NextIteration('Iter_2')
+      Iter_2.SetMeshName('MOYEU_2')
+      Iter_2.SetMeshFile(os.path.join(Rep_Test_Resu, 'maill.02.med'))
+      Iter_2.AssociateHypo('Hypo')
+      error = Iter_2.Compute(1, 1)
+      if error :
+        error = 10*iaux + 2
+        break
 
-# Creation of the iteration Iter_2
-    Iter_2 = Iter_1.NextIteration('Iter_2')
-    Iter_2.SetMeshName('MOYEU_2')
-    Iter_2.SetMeshFile(os.path.join(Rep_Test_Resu, 'maill.02.med'))
-    Iter_2.AssociateHypo('Hypo')
-    error = Iter_2.Compute(1)
-    if error :
-      error = 2
-      break
+  # Destruction
+  # After the first loop, the case is deleted, except the final mesh files
+      if ( iaux == 0 ) :
+        error = Case_1.Delete(0)
+        if error :
+          break
+  # After the second loop, the iterations are deleted, with the final mesh files
+      elif ( iaux == 1 ) :
+  # Recursive destruction of the iterations
+        error = Iter_1.Delete(1)
+        if error :
+          error = 10*iaux + 3
+          break
+  # Destruction and creation of the hypothese
+        if ( iaux == 1 ) :
+          error = Hypo.Delete()
+          if error :
+            error = 10*iaux + 4
+            break
+          Hypo = homard.CreateHypothesis('Hypo')
+          Hypo.SetAdapRefinUnRef(-1, 1, 0)
 #
     break
 #
@@ -154,9 +180,8 @@ except Exception, e:
 #
 # Test of the result
 #
-s_iter_test_file = str(n_iter_test_file)
-test_file_suff = "apad.0" + s_iter_test_file + ".bilan"
-rep_test_file = "I0" + s_iter_test_file
+test_file_suff = "apad.%02d.bilan" % n_iter_test_file
+rep_test_file = "I%02d" % (n_iter_test_file*n_boucle)
 #
 test_file = os.path.join(Rep_Test, Test_Name + "." + test_file_suff)
 mess_error_ref = "\nReference file: " + test_file