code: def test_mixied_input_type_train_test_split(setup):
      rs = np.random.RandomState(0)
      df_raw = pd.DataFrame(rs.rand(10, 4))
      df = md.DataFrame(df_raw, chunk_size=5)
      X, y = df.iloc[:, :-1], df.iloc[:, -1]
  
      for x_to_tensor, y_to_tensor in itertools.product(
          range(1), range(1)
      ):
          x = X
          if x_to_tensor:
              x = mt.tensor(x)
          yy = y
          if y_to_tensor:
              yy = mt.tensor(yy)
  
          x_train, x_test, y_train, y_test = train_test_split(
              x,
              y,
              random_state=0,
              run_kwargs={"extra_config": {"check_nsplits": False}},
          )
          assert isinstance(x_train, type(x))
          assert isinstance(x_test, type(x))
          assert isinstance(y_train, type(yy))
          assert isinstance(y_test, type(yy))
  
imports: import itertools
  import numpy
  import pandas
  import pytest
  from ....None import dataframe
  from ....None import tensor
  from ....dataframe.core import DATAFRAME_TYPE
  from ....lib.sparse import SparseNDArray
  from ...utils.validation import _num_samples
  from ..None import train_test_split, KFold
label_desc: Use image node_id 8 for calling a global function with example usage: test_mixied_input_type_train_test_split(setup) without return types