code: def test_smart_array_concatenate_normal():
      _check_smart_concatenate(
          [
              np.random.rand(0, 4, 5),
              np.random.rand(3, 4, 5),
              np.random.rand(1, 4, 5),
              np.random.rand(2, 4, 5),
          ]
      )
  
      _check_smart_concatenate([range(10), range(20)])
  
      with pytest.raises(
          ValueError, match="must match exactly.* size 4 .* size 6"
      ):
          _check_smart_concatenate(
              [
                  np.random.rand(0, 4, 5),
                  np.random.rand(3, 6, 7),
              ]
          )
  
      with pytest.raises(
          ValueError,
          match="must have same number.* 2 dimension.* 3 dimension",
      ):
          _check_smart_concatenate(
              [
                  np.random.rand(0, 4),
                  np.random.rand(3, 6, 7),
              ]
          )
  
file_path: stellargraph/tests/core/test_utils.py
imports: import pytest
  import numpy
  from stellargraph.core.utils import *
  from ..test_utils import flaky_xfail_mark
  from ..test_utils.graphs import example_graph_random
label_desc: Use image node_id 9 for calling a global function with example usage: test_smart_array_concatenate_normal() without return types