MCPcopy Create free account
hub / github.com/mpi4py/mpi4py / BaseTestFile

Class BaseTestFile

test/test_file.py:16–198  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

14
15
16class BaseTestFile:
17 #
18 COMM = MPI.COMM_NULL
19 FILE = MPI.FILE_NULL
20
21 prefix = "mpi4py"
22
23 def setUp(self):
24 self.fname = pathlib.Path(maketemp(self.prefix))
25 self.amode = MPI.MODE_RDWR | MPI.MODE_CREATE
26 # self.amode |= MPI.MODE_DELETE_ON_CLOSE
27 try:
28 self.FILE = MPI.File.Open(
29 self.COMM,
30 self.fname,
31 self.amode,
32 MPI.INFO_NULL,
33 )
34 # self.fname=None
35 except Exception:
36 self.fname.unlink()
37 raise
38
39 def tearDown(self):
40 if self.FILE == MPI.FILE_NULL:
41 return
42 amode = self.FILE.amode
43 self.FILE.Close()
44 if not (amode & MPI.MODE_DELETE_ON_CLOSE):
45 MPI.File.Delete(self.fname, MPI.INFO_NULL)
46
47 @unittest.skipMPI("openmpi(==2.0.0)")
48 @unittest.skipMPI("MPICH2(<1.1.0)")
49 def testPreallocate(self):
50 size = self.FILE.Get_size()
51 self.assertEqual(size, 0)
52 self.FILE.Preallocate(1)
53 size = self.FILE.Get_size()
54 self.assertEqual(size, 1)
55 self.FILE.Preallocate(100)
56 size = self.FILE.Get_size()
57 self.assertEqual(size, 100)
58 self.FILE.Preallocate(10)
59 size = self.FILE.Get_size()
60 self.assertEqual(size, 100)
61 self.FILE.Preallocate(200)
62 size = self.FILE.Get_size()
63 self.assertEqual(size, 200)
64
65 def testGetSetSize(self):
66 size = self.FILE.Get_size()
67 self.assertEqual(size, 0)
68 size = self.FILE.size
69 self.assertEqual(size, 0)
70 self.FILE.Set_size(100)
71 size = self.FILE.Get_size()
72 self.assertEqual(size, 100)
73 size = self.FILE.size

Callers 1

have_featureFunction · 0.85

Calls

no outgoing calls

Tested by 1

have_featureFunction · 0.68

Used in the wild real call sites across dependent graphs

searching dependent graphs…