code: def test_native_types(self):
      for tp, fmt, shape, itemtp in native_types:
          ob = tp()
          v = memoryview(ob)
          self.assertEqual(normalize(v.format), normalize(fmt))
          if shape:
              self.assertEqual(len(v), shape[0])
          else:
              self.assertRaises(TypeError, len, v)
          self.assertEqual(v.itemsize, sizeof(itemtp))
          self.assertEqual(v.shape, shape)
          # XXX Issue #12851: PyCData_NewGetBuffer() must provide strides
          #     if requested. memoryview currently reconstructs missing
          #     stride information, so this assert will fail.
          # self.assertEqual(v.strides, ())
  
          # they are always read/write
          self.assertFalse(v.readonly)
  
          n = 1
          for dim in v.shape:
              n = n * dim
          self.assertEqual(n * v.itemsize, len(v.tobytes()))
  
imports: import re
  import sys
  import unittest
  from ctypes import CFUNCTYPE, POINTER, sizeof, Union, Structure, LittleEndianStructure, BigEndianStructure, c_char, c_byte, c_ubyte, c_short, c_ushort, c_int, c_uint, c_long, c_ulong, c_longlong, c_ulonglong, c_uint64, c_bool, c_float, c_double, c_longdouble, py_object
label_desc: Use image node_id 1 for calling the Test obj's underlying member method code with example usage: obj.test_native_types() without return types