code: def test_array_mem_type(input_type, dtype, shape, order, mem_type):
      """
      Test whether we can create CumlArray from all supported types and array
      shapes on all supported mem types.
      """
      mem_type = MemoryType.from_str(mem_type)
  
      with using_memory_type(mem_type):
          input_array = create_cuml_array_input(
              input_type, dtype, shape, order
          )
  
          # Ensure the array is creatable
          array = CumlArray(input_array)
  
          input_mem_type = determine_array_memtype(input_array)
          if input_mem_type.is_device_accessible:
              joint_mem_type = input_mem_type
          else:
              joint_mem_type = mem_type
  
          assert joint_mem_type.xpy.all(
              joint_mem_type.xpy.asarray(input_array)
              == joint_mem_type.xpy.asarray(array)
          )
  
imports: import gc
  import operator
  import pickle
  import pytest
  from copy import deepcopy
  from cuml.internals.array import CumlArray, _order_to_strides, array_to_memory_order
  from cuml import global_settings
  from cuml.internals.mem_type import MemoryType
  from cuml.internals.memory_utils import _get_size_from_shape, determine_array_memtype, using_memory_type
  from cuml.internals.safe_imports import cpu_only_import, cpu_only_import_from, gpu_only_import, gpu_only_import_from
  from cuml.testing.strategies import UNSUPPORTED_CUDF_DTYPES, create_cuml_array_input, cuml_array_dtypes, cuml_array_input_types, cuml_array_inputs, cuml_array_orders, cuml_array_output_types, cuml_array_shapes, cuml_array_mem_types
  from cuml.testing.utils import normalized_shape, series_squeezed_shape, squeezed_shape, to_nparray
  from hypothesis import assume, given, settings
  from hypothesis import strategies
label_desc: Use image node_id 6 for calling a global function with example usage: test_array_mem_type(input_type, dtype, shape, order, mem_type) without return types