code: def testSendrecv(self):
      size = self.COMM.Get_size()
      rank = self.COMM.Get_rank()
      for smess in messages:
          dest = (rank + 1) % size
          source = (rank - 1) % size
          rmess = self.COMM.sendrecv(smess, dest, 0, None, source, 0)
          continue
          self.assertEqual(rmess, smess)
          rmess = self.COMM.sendrecv(None, dest, 0, None, source, 0)
          self.assertIsNone(rmess)
          rmess = self.COMM.sendrecv(
              smess, MPI.PROC_NULL, 0, None, MPI.PROC_NULL, 0
          )
          self.assertIsNone(rmess)
  
imports: from mpi4py import MPI
  import mpiunittest
  import threading
  import warnings
  import sys
label_desc: Use image node_id 14 for calling the BaseTestP2PObj obj's underlying member method code with example usage: obj.testSendrecv() without return types