code: def testBcastInter(self, msglist=None, check=None):
      comm, COLOR = self.make_intercomm(self.COMM)
      rank = comm.Get_rank()
      size = comm.Get_size()
      rsize = comm.Get_remote_size()
      for smess in (msglist or messages)[:1]:
          comm.barrier()
          for color in [0, 1]:
              if COLOR == color:
                  for root in range(size):
                      if root == rank:
                          rmess = comm.bcast(smess, root=MPI.ROOT)
                      else:
                          rmess = comm.bcast(None, root=MPI.PROC_NULL)
                      self.assertIsNone(rmess)
              else:
                  for root in range(rsize):
                      rmess = comm.bcast(None, root=root)
                      if msglist and check:
                          self.assertTrue(check(rmess))
                      else:
                          self.assertEqual(rmess, smess)
      if isinstance(comm, pkl5.Comm):
          bcast = comm.bcast
          rsize = comm.Get_remote_size()
          self.assertRaises(MPI.Exception, bcast, None, root=rsize)
      comm.Free()
  
imports: from mpi4py import MPI
  from mpi4py.util import pkl5
  import sys, os
label_desc: Use image node_id 25 for calling the BaseTest obj's underlying member method code with example usage: obj.testBcastInter(msglist, check) without return types