code: def testPickle(self):
      from pickle import dumps, loads
  
      for message in (
          MPI.MESSAGE_NULL,
          MPI.MESSAGE_NO_PROC,
      ):
          msg = loads(dumps(message))
          self.assertIs(msg, message)
          msg = loads(dumps(MPI.Message(message)))
          self.assertIsNot(msg, message)
          self.assertEqual(msg, message)
      comm = MPI.COMM_SELF
      request = comm.Isend(b"", 0, 0)
      with self.assertRaises(ValueError):
          loads(dumps(request))
      message = comm.Mprobe(0, 0)
      with self.assertRaises(ValueError):
          loads(dumps(message))
      message.Recv(bytearray(1))
      request.Wait()
  
imports: from mpi4py import MPI
  import mpiunittest
  import arrayimpl
label_desc: Use image node_id 3 for calling the TestMessage obj's underlying member method code with example usage: obj.testPickle() without return types