1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51
|
import unittest
from petsc4py import PETSc
# --------------------------------------------------------------------
class TestVersion(unittest.TestCase):
def testGetVersion(self):
version = PETSc.Sys.getVersion()
self.assertTrue(version > (0, 0, 0))
v, date = PETSc.Sys.getVersion(date=True)
self.assertTrue(version == v)
self.assertTrue(isinstance(date, str))
v, author = PETSc.Sys.getVersion(author=True)
self.assertTrue(version == v)
self.assertTrue(isinstance(author, (list, tuple)))
def testGetVersionInfo(self):
version = PETSc.Sys.getVersion()
info = PETSc.Sys.getVersionInfo()
self.assertEqual(
version,
(
info['major'],
info['minor'],
info['subminor'],
),
)
self.assertTrue(isinstance(info['release'], bool))
v, date = PETSc.Sys.getVersion(date=True)
self.assertEqual(date, info['date'])
def testGetSetDefaultComm(self):
c = PETSc.Sys.getDefaultComm()
self.assertEqual(c, PETSc.COMM_WORLD)
PETSc.Sys.setDefaultComm(PETSc.COMM_SELF)
c = PETSc.Sys.getDefaultComm()
self.assertEqual(c, PETSc.COMM_SELF)
PETSc.Sys.setDefaultComm(PETSc.COMM_WORLD)
c = PETSc.Sys.getDefaultComm()
self.assertEqual(c, PETSc.COMM_WORLD)
f = lambda: PETSc.Sys.setDefaultComm(PETSc.COMM_NULL)
self.assertRaises(ValueError, f)
# --------------------------------------------------------------------
if __name__ == '__main__':
unittest.main()
# --------------------------------------------------------------------
|