code: def test_concat_join_no_overlapping_columns_many_and_empty2(
      objs, ignore_index, sort, join, axis
  ):
      objs_gd = [
          gd.from_pandas(o) if o is not None else o for o in objs
      ]
  
      expected = pd.concat(
          objs,
          sort=sort,
          join=join,
          ignore_index=ignore_index,
          axis=axis,
      )
      actual = gd.concat(
          objs_gd,
          sort=sort,
          join=join,
          ignore_index=ignore_index,
          axis=axis,
      )
      assert_eq(expected, actual, check_index_type=False)
  
imports: from decimal import Decimal
  import numpy
  import pandas
  import pytest
  import cudf
  from cudf.api.types import is_categorical_dtype
  from cudf.core._compat import PANDAS_GE_150, PANDAS_LT_140
  from cudf.core.dtypes import Decimal32Dtype, Decimal64Dtype, Decimal128Dtype
  from cudf.testing._utils import assert_eq, assert_exceptions_equal
label_desc: Use image node_id 31 for calling a global function with example usage: test_concat_join_no_overlapping_columns_many_and_empty2(objs, ignore_index, sort, join, axis) without return types