code: def test_concatenations_and_stacking():
      for backend in imp_op_backends:
          print("testing shapes for ", backend.framework_name)
          for n_arrays in [1, 2, 5]:
              shapes = [[], [1], [1, 1], [2, 3, 5, 7], [1] * 6]
              for shape in shapes:
                  arrays1 = [
                      numpy.arange(i, i + numpy.prod(shape)).reshape(
                          shape
                      )
                      for i in range(n_arrays)
                  ]
                  arrays2 = [
                      backend.from_numpy(array) for array in arrays1
                  ]
                  result0 = numpy.asarray(arrays1)
                  result1 = rearrange(arrays1, "...->...")
                  result2 = rearrange(arrays2, "...->...")
                  assert numpy.array_equal(result0, result1)
                  assert numpy.array_equal(
                      result1, backend.to_numpy(result2)
                  )
  
                  result1 = rearrange(arrays1, "b ... -> ... b")
                  result2 = rearrange(arrays2, "b ... -> ... b")
                  assert numpy.array_equal(
                      result1, backend.to_numpy(result2)
                  )
  
imports: import itertools
  import numpy
  import pytest
  from einops import EinopsError
  from einops.einops import rearrange, reduce, repeat, _enumerate_directions
  from .None import collect_test_backends, is_backend_tested, FLOAT_REDUCTIONS
label_desc: Use image node_id 14 for calling a global function with example usage: test_concatenations_and_stacking() without return types