code: def check_other_types(self, f, bytes_data, expected):
      eq = self.assertEqual
      b = bytearray(bytes_data)
      eq(f(b), expected)
      # The bytearray wasn't mutated
      eq(b, bytes_data)
      eq(f(memoryview(bytes_data)), expected)
      eq(f(array("B", bytes_data)), expected)
      # XXX why is b64encode hardcoded here?
      self.check_nonbyte_element_format(base64.b64encode, bytes_data)
      self.check_multidimensional(base64.b64encode, bytes_data)
  
imports: import unittest
  import base64
  import binascii
  import os
  from array import array
  from test.support import os_helper
  from test.support import script_helper
label_desc: Use image node_id 3 for calling the BaseXYTestCase obj's underlying member method code with example usage: obj.check_other_types(f, bytes_data, expected) without return types