code: def test_columnar_convert_ndarray():
      converter = ColumnarConverter(
          "some_name",
          "foo",
          None,
          column_defaults={},
          selected_columns={},
          transform_columns={},
      )
  
      arr1 = np.random.rand(3, 4, 5)
      arr2 = np.random.rand(6, 7)
  
      # single array, default type
      ids, columns, type_info = converter.convert(arr1)
  
      assert ids == range(3)
      assert columns == {}
      _check_type_info(type_info, [("foo", arr1)])
      assert type_info[0][1] is arr1
  
      # multiple arrays, explicit types; the IDs are wrong (duplicated) here, but that's detected
      # elsewhere
      ids, columns, type_info = converter.convert(
          {"a": arr1, "b": arr2}
      )
  
      np.testing.assert_array_equal(ids, [*range(3), *range(6)])
      assert columns == {}
      _check_type_info(type_info, [("a", arr1), ("b", arr2)])
      assert type_info[0][1] is arr1
      assert type_info[1][1] is arr2
  
      # check it says which type
      with pytest.raises(
          ValueError,
          match=r"some_name\['foo'\]: could not convert NumPy array",
      ):
          converter.convert(np.zeros(123))
  
imports: import networkx
  import numpy
  import pandas
  import pytest
  from stellargraph.core.convert import ColumnarConverter, convert_nodes, convert_edges, from_networkx
  from stellargraph.core.indexed_array import IndexedArray
label_desc: Use image node_id 13 for calling a global function with example usage: test_columnar_convert_ndarray() without return types