code: def expected_sentinels(cv_scheme):
      """Determine expected values of :class`environment.Environment`'s `DatasetSentinel`s given
      train/validation splits created by `cv_scheme`
  
      Parameters
      ----------
      cv_scheme: Descendant instance of `sklearn.model_selection._split._BaseKFold`
          Cross-validation class instance to produce train/validation data splits via :meth:`split`
  
      Returns
      -------
      train_sentinels: List
          Tuples of (train_input, train_target) produced by `cv_scheme.split`
      validation_sentinels: List
          Tuples of (validation_input, validation_target) produced by `cv_scheme.split`
      holdout_sentinels: List
          Tuples of (holdout_input, holdout_target) repeated for each period created by `cv_scheme`
      """
      train_sentinels, validation_sentinels, holdout_sentinels = (
          [],
          [],
          [],
      )
  
      data = get_breast_cancer_data(target="target")
      target_df = data[["target"]]
      input_df = data.drop(["target"], axis=1)
  
      # TODO: Need to account for feature engineering here - Probably need to have hardcoded test data rather than calculating splits here
      for train_i, validation_i in cv_scheme.split(input_df, target_df):
          train_sentinels.append(
              (input_df.iloc[train_i, :], target_df.iloc[train_i, :])
          )
          validation_sentinels.append(
              (
                  input_df.iloc[validation_i, :],
                  target_df.iloc[validation_i, :],
              )
          )
          holdout_sentinels.append((input_df, target_df))
          # TODO: Need to account for feature engineering here - Probably need to have hardcoded test data rather than calculating splits here
  
      return train_sentinels, validation_sentinels, holdout_sentinels
  
file_path: hyperparameter_hunter/tests/test_sentinels.py
imports: from hyperparameter_hunter import Environment, CVExperiment, Real, Integer, Categorical, GBRT
  from hyperparameter_hunter import lambda_callback
  from hyperparameter_hunter.sentinels import DatasetSentinel
  from hyperparameter_hunter.settings import G
  from hyperparameter_hunter.utils.learning_utils import get_breast_cancer_data
  import pytest
  import sys
label_desc: Use image node_id 1 for calling a global function with example usage: expected_sentinels(cv_scheme) and returns: train_sentinels,  validation_sentinels,  holdout_sentinels