code: def testPutGet(self):
      typemap = MPI._typedict
      group = self.WIN.Get_group()
      size = group.Get_size()
      group.Free()
      for array, typecode in arrayimpl.loop():
          with arrayimpl.test(self):
              if unittest.is_mpi_gpu("mvapich2", array):
                  continue
              for count in range(10):
                  for rank in range(size):
                      with self.subTest(rank=rank, count=count):
                          sbuf = array(range(count), typecode)
                          rbuf = array(-1, typecode, count + 1)
                          #
                          self.WIN.Fence()
                          self.WIN.Put(sbuf.as_mpi(), rank)
                          self.WIN.Fence()
                          self.WIN.Get(rbuf.as_mpi_c(count), rank)
                          self.WIN.Fence()
                          for i in range(count):
                              self.assertEqual(sbuf[i], scalar(i))
                              self.assertEqual(rbuf[i], scalar(i))
                          self.assertEqual(rbuf[-1], scalar(-1))
                          #
                          sbuf = array(range(count), typecode)
                          rbuf = array(-1, typecode, count + 1)
                          target = sbuf.itemsize
                          self.WIN.Fence()
                          self.WIN.Put(sbuf.as_mpi(), rank, target)
                          self.WIN.Fence()
                          self.WIN.Get(
                              rbuf.as_mpi_c(count), rank, target
                          )
                          self.WIN.Fence()
                          for i in range(count):
                              self.assertEqual(sbuf[i], scalar(i))
                              self.assertEqual(rbuf[i], scalar(i))
                          self.assertEqual(rbuf[-1], scalar(-1))
                          #
                          sbuf = array(range(count), typecode)
                          rbuf = array(-1, typecode, count + 1)
                          datatype = typemap[typecode]
                          target = (sbuf.itemsize, count, datatype)
                          self.WIN.Fence()
                          self.WIN.Put(sbuf.as_mpi(), rank, target)
                          self.WIN.Fence()
                          self.WIN.Get(
                              rbuf.as_mpi_c(count), rank, target
                          )
                          self.WIN.Fence()
                          for i in range(count):
                              self.assertEqual(sbuf[i], scalar(i))
                              self.assertEqual(rbuf[i], scalar(i))
                          self.assertEqual(rbuf[-1], scalar(-1))
  
imports: from mpi4py import MPI
  import mpiunittest
  import contextlib
  import arrayimpl
  import sys
label_desc: Use image node_id 3 for calling the BaseTestRMA obj's underlying member method code with example usage: obj.testPutGet() without return types