code: def test_bts_exceptions():
      X, y, cv, _, model = _prepare_data()
  
      X_short, y_short = X.iloc[:3, :], y.iloc[:3]
      with pytest.raises(
          expected_exception=ValueError,
          match=re.escape(
              bundle.get("timeseries_splits_more_than_samples").format(
                  5, 3
              )
          ),
      ):
          _ = cross_val_score(model, X_short, y_short, cv=cv)
  
      X_short, y_short = X.iloc[:10, :], y.iloc[:10]
      with pytest.raises(
          expected_exception=ValueError,
          match=re.escape(bundle.get("timeseries_invalid_test_size")),
      ):
          _ = cross_val_score(model, X_short, y_short, cv=cv)
  
      with pytest.raises(
          expected_exception=ValueError,
          match=re.escape(
              bundle.get("timeseries_invalid_split_type").format(
                  5.5, "<class 'float'>"
              )
          ),
      ):
          _ = BlockedTimeSeriesSplit(n_splits=5.5, test_size=0.2)  # type: ignore
  
      with pytest.raises(
          expected_exception=ValueError,
          match=re.escape(
              bundle.get("timeseries_invalid_split_count").format(0)
          ),
      ):
          _ = BlockedTimeSeriesSplit(n_splits=0, test_size=0.2)
  
      with pytest.raises(
          expected_exception=ValueError,
          match=re.escape(
              bundle.get("timeseries_invalid_test_size_type").format(2)
          ),
      ):
          _ = BlockedTimeSeriesSplit(n_splits=5, test_size=2)
  
file_path: upgini/tests/test_blocked_time_series.py
imports: import re
  import pandas
  import pytest
  from sklearn.linear_model import LogisticRegression
  from sklearn.model_selection import cross_val_score
  from upgini.resource_bundle import bundle
  from upgini.utils.blocked_time_series import BlockedTimeSeriesSplit
label_desc: Use image node_id 4 for calling a global function with example usage: test_bts_exceptions() without return types