code: def testMixed(self):
      comm = self.COMM
      rank = comm.Get_rank()
      #
      sreq = comm.Isend([None, 0, "B"], rank)
      obj = comm.recv(None, rank)
      sreq.Wait()
      self.assertIsNone(obj)
      for smess in messages:
          buf = MPI.pickle.dumps(smess)
          sreq = comm.Isend([buf, "B"], rank)
          rmess = comm.recv(None, rank)
          sreq.Wait()
          self.assertEqual(rmess, smess)
      #
      sreq = comm.Isend([None, 0, "B"], rank)
      rreq = comm.irecv(None, rank)
      sreq.Wait()
      obj = rreq.wait()
      self.assertIsNone(obj)
      for smess in messages:
          buf = MPI.pickle.dumps(smess)
          sreq = comm.Isend([buf, "B"], rank)
          rreq = comm.irecv(None, rank)
          sreq.Wait()
          rmess = rreq.wait()
          self.assertEqual(rmess, smess)
  
imports: from mpi4py import MPI
  import mpiunittest
  import threading
  import warnings
  import sys
label_desc: Use image node_id 15 for calling the BaseTestP2PObj obj's underlying member method code with example usage: obj.testMixed() without return types