xref: /petsc/src/binding/petsc4py/test/test_sys.py (revision 552edb6364df478b294b3111f33a8f37ca096b20)
15808f684SSatish Balayimport unittest
25808f684SSatish Balayfrom petsc4py import PETSc
35808f684SSatish Balay
45808f684SSatish Balay# --------------------------------------------------------------------
55808f684SSatish Balay
65808f684SSatish Balay
7*6f336411SStefano Zampiniclass TestVersion(unittest.TestCase):
85808f684SSatish Balay    def testGetVersion(self):
95808f684SSatish Balay        version = PETSc.Sys.getVersion()
105808f684SSatish Balay        self.assertTrue(version > (0, 0, 0))
115808f684SSatish Balay        v, date = PETSc.Sys.getVersion(date=True)
125808f684SSatish Balay        self.assertTrue(version == v)
135808f684SSatish Balay        self.assertTrue(isinstance(date, str))
145808f684SSatish Balay        v, author = PETSc.Sys.getVersion(author=True)
155808f684SSatish Balay        self.assertTrue(version == v)
165808f684SSatish Balay        self.assertTrue(isinstance(author, (list, tuple)))
175808f684SSatish Balay
185808f684SSatish Balay    def testGetVersionInfo(self):
195808f684SSatish Balay        version = PETSc.Sys.getVersion()
205808f684SSatish Balay        info = PETSc.Sys.getVersionInfo()
21*6f336411SStefano Zampini        self.assertEqual(
22*6f336411SStefano Zampini            version,
23*6f336411SStefano Zampini            (
24*6f336411SStefano Zampini                info['major'],
255808f684SSatish Balay                info['minor'],
26*6f336411SStefano Zampini                info['subminor'],
27*6f336411SStefano Zampini            ),
28*6f336411SStefano Zampini        )
295808f684SSatish Balay        self.assertTrue(isinstance(info['release'], bool))
305808f684SSatish Balay        v, date = PETSc.Sys.getVersion(date=True)
315808f684SSatish Balay        self.assertEqual(date, info['date'])
325808f684SSatish Balay
335808f684SSatish Balay    def testGetSetDefaultComm(self):
345808f684SSatish Balay        c = PETSc.Sys.getDefaultComm()
355808f684SSatish Balay        self.assertEqual(c, PETSc.COMM_WORLD)
365808f684SSatish Balay        PETSc.Sys.setDefaultComm(PETSc.COMM_SELF)
375808f684SSatish Balay        c = PETSc.Sys.getDefaultComm()
385808f684SSatish Balay        self.assertEqual(c, PETSc.COMM_SELF)
395808f684SSatish Balay        PETSc.Sys.setDefaultComm(PETSc.COMM_WORLD)
405808f684SSatish Balay        c = PETSc.Sys.getDefaultComm()
415808f684SSatish Balay        self.assertEqual(c, PETSc.COMM_WORLD)
425808f684SSatish Balay        f = lambda: PETSc.Sys.setDefaultComm(PETSc.COMM_NULL)
435808f684SSatish Balay        self.assertRaises(ValueError, f)
445808f684SSatish Balay
45*6f336411SStefano Zampini
465808f684SSatish Balay# --------------------------------------------------------------------
475808f684SSatish Balay
485808f684SSatish Balayif __name__ == '__main__':
495808f684SSatish Balay    unittest.main()
505808f684SSatish Balay
515808f684SSatish Balay# --------------------------------------------------------------------
52