code: def testCancel(self):
      size = self.COMM.Get_size()
      rank = self.COMM.Get_rank()
      status = MPI.Status()
      for smess in messages:
          req = self.COMM.issend(smess, rank)
          self.assertTrue(req)
          req.cancel()
          flag = req.get_status(status)
          cancelled = status.Is_cancelled()
          self.assertTrue(req)
          if cancelled:
              self.assertTrue(flag)
              req.Free()
              self.assertFalse(req)
          else:
              self.assertFalse(flag)
              rmess = self.COMM.recv(None, rank, 0)
              flag = req.get_status()
              while not flag:
                  flag = req.get_status()
              self.assertTrue(flag)
              self.assertTrue(req)
              flag, _ = req.test()
              self.assertTrue(flag)
              self.assertFalse(req)
              self.assertEqual(rmess, smess)
  
imports: from mpi4py import MPI
  import mpiunittest
  import threading
  import warnings
  import sys
label_desc: Use image node_id 9 for calling the BaseTestP2PObj obj's underlying member method code with example usage: obj.testCancel() without return types