Salome HOME
Typo and whitespace fixes by Kunda
[tools/medcoupling.git] / src / MEDLoader / Swig / MEDLoaderTest3.py
index 63b54c1e77acf77e1622ee8ca97fcdddba2babda..4cf592135355b04331e64bc429663442bff5c06f 100644 (file)
@@ -5783,8 +5783,6 @@ class MEDLoaderTest3(unittest.TestCase):
         pass
     
     @unittest.skipUnless(LooseVersion(MEDFileVersionStr())>=LooseVersion('3.2.1'),"This test requires at least MEDFile version 3.2.1")
-    @unittest.skipUnless(LooseVersion(MEDFileVersionStr())<LooseVersion('4.0.0'),
-                         "This test is not compatible with MEDFile version 4.0.0 and above")
     def testWriteInto30(self):
         fname="Pyfile108.med"
         fname2="Pyfile109.med"
@@ -5792,8 +5790,8 @@ class MEDLoaderTest3(unittest.TestCase):
         mm=MEDFileUMesh() ; mm[0]=m
         mm.setFamilyId("FAMILLE_ZERO",0)
         #
-        mm.write30(fname,2)
-        assert(LooseVersion(MEDFileVersionOfFileStr(fname)).version[:2]==[3,0]) # checks that just written MED file has a version == 3.0.x
+        mm.write33(fname,2)
+        assert(LooseVersion(MEDFileVersionOfFileStr(fname)).version[:2]==[3,3]) # checks that just written MED file has a version == 3.0.x
         mm2=MEDFileUMesh(fname)
         self.assertTrue(mm.isEqual(mm2,1e-12))
         #
@@ -6158,44 +6156,6 @@ class MEDLoaderTest3(unittest.TestCase):
         self.assertEqual(f3.getMesh().getTypeOfCell(0),NORM_PENTA18)
         pass
 
-    @unittest.skipUnless('linux'==platform.system().lower(),"stderr redirection not ported on Windows ?")
-    @unittest.skipUnless(LooseVersion(MEDFileVersionStr())<LooseVersion('4.0.0'),
-                         "This test is not compatible with MEDFile version 4.0.0 and above")
-    def testMedFileCapabilityToCryOnNewFeatureWritingIntoOldFiles(self):
-        fname="Pyfile116.med"
-        errfname="Pyfile116.err"
-        c=DataArrayDouble([0,1,2,3])
-        m=MEDCouplingCMesh()
-        m.setCoords(c,c)
-        m=m.buildUnstructured()
-        m.setName("mesh")
-        mm=MEDFileUMesh()
-        mm[0]=m
-        f=MEDCouplingFieldInt(ON_CELLS)
-        f.setMesh(m) ; arr2=DataArrayInt(m.getNumberOfCells()) ; arr2.iota()
-        f.setArray(arr2)
-        f.setName("field")
-        f1ts=MEDFileIntField1TS()
-        f1ts.setFieldNoProfileSBT(f)
-        mm.write30(fname,2)
-        f1ts.write30(fname,0)
-        #
-        f=MEDCouplingFieldFloat(ON_CELLS)
-        f.setMesh(m) ; arr2=DataArrayFloat(m.getNumberOfCells()) ; arr2.iota()
-        f.setArray(arr2)
-        f.setName("field2")
-        f1ts=MEDFileFloatField1TS()
-        f1ts.setFieldNoProfileSBT(f)
-        #
-        import os,gc
-        tmp=StdOutRedirect(errfname)
-        self.assertRaises(InterpKernelException,f1ts.write30,fname,0)
-        del tmp
-        gc.collect(0)
-        if os.path.exists(errfname):
-            os.remove(errfname)
-        pass
-
     def testFieldsLinearToQuadratic(self):
         fname="Pyfile117.med"
         arr=DataArrayDouble([0,1])
@@ -6473,19 +6433,48 @@ class MEDLoaderTest3(unittest.TestCase):
         mm.addGroup(0,grp2)
         grp3=DataArrayInt.Range(0,m1.getNumberOfCells(),1) ; grp3.setName("grp3")
         mm.addGroup(-1,grp3)
-        assert(0 not in mm.getFamiliesIdsOnGroup("grp3")) # bug was here !
+        self.assertNotIn(0,mm.getFamiliesIdsOnGroup("grp3")) # bug was here !
         grp4=DataArrayInt([3,5,8,10]) ; grp4.setName("grp4")
         mm.addNodeGroup(grp4)
         mm.rearrangeFamilies()
-        assert(mm.getGrpNonEmptyLevelsExt("grp0")==(0,))
-        assert(mm.getGrpNonEmptyLevelsExt("grp1")==(0,))
-        assert(mm.getGrpNonEmptyLevelsExt("grp2")==(0,))
-        assert(mm.getGrpNonEmptyLevelsExt("grp3")==(-1,))
-        assert(mm.getGrpNonEmptyLevelsExt("grp4")==(1,))
+        self.assertEqual(mm.getGrpNonEmptyLevelsExt("grp0"),(0,))
+        self.assertEqual(mm.getGrpNonEmptyLevelsExt("grp1"),(0,))
+        self.assertEqual(mm.getGrpNonEmptyLevelsExt("grp2"),(0,))
+        self.assertEqual(mm.getGrpNonEmptyLevelsExt("grp3"),(-1,))
+        self.assertEqual(mm.getGrpNonEmptyLevelsExt("grp4"),(1,))
 
         for grp in [grp0,grp1,grp2,grp3,grp4]:
-            assert(mm.getGroupArr(mm.getGrpNonEmptyLevelsExt(grp.getName())[0],grp.getName()).isEqual(grp))
+            self.assertTrue(mm.getGroupArr(mm.getGrpNonEmptyLevelsExt(grp.getName())[0],grp.getName()).isEqual(grp))
+            pass
+        pass
+
+    def tessContxtMger1TS(self):
+        fname="Pyfile119.med"
+        coo=DataArrayDouble(1000) ; coo.iota()
+        m=MEDCouplingUMesh.Build0DMeshFromCoords(coo)
+        m.setName("mesh")
+        WriteMesh(fname,m,True)
+        f=MEDCouplingFieldDouble(ON_CELLS)
+        f.setMesh(m)
+        f.setName("Field")
+        arr=DataArrayDouble(m.getNumberOfCells())
+        f.setArray(arr)
+        f.checkConsistencyLight()
+        for i in range(10):
+            arr[:]=float(i+1)
+            f.setTime(float(i),i,0)
+            WriteFieldUsingAlreadyWrittenMesh(fname,f)
+            pass
+        #
+        mm=MEDFileMesh.New(fname)
+        fmts=MEDFileFieldMultiTS(fname,False)
+        refSize=fmts.getHeapMemorySize()
+        for f1ts in fmts:
+            with f1ts:
+                f=f1ts.field(mm)
+                pass
             pass
+        self.assertIn(fmts.getHeapMemorySize(),range(refSize,refSize+refSize//10))
         pass
 
     pass