code: def test_stratify(cv_folds, shuffle, stratify, data_classes):
      data = get_tabular_classification_data(
          length=100, class_count=data_classes
      )
      data_splitter = DataSourceSplitter(
          cv_folds=cv_folds, shuffle=shuffle, stratify=stratify
      )
      data_producer = data_splitter.build(data)
  
      for train, test in data_producer():
          assert check_stratify(train, test)
  
imports: from functools import partial
  from typing import Callable
  import numpy
  import pandas
  import pytest
  from fedot.core.data.data import InputData
  from fedot.core.data.data_split import train_test_data_setup
  from fedot.core.data.multi_modal import MultiModalData
  from fedot.core.optimisers.objective.data_source_splitter import DataSourceSplitter
  from fedot.core.repository.dataset_types import DataTypesEnum
  from fedot.core.repository.tasks import Task, TaskTypesEnum, TsForecastingParams
  from fedot.core.utils import split_data
  from fedot.core.data.cv_folds import cv_generator
  from test.unit.pipelines.test_decompose_pipelines import get_classification_data
  from test.unit.tasks.test_forecasting import get_ts_data
label_desc: Use image node_id 19 for calling a global function with example usage: test_stratify(cv_folds, shuffle, stratify, data_classes) without return types