code: def test_check_capabilities(missing, multivariate, unequal):
      """Test the checking of capabilities.
  
      There are eight different combinations to be tested with a classifier that can
      handle it and that cannot. Obvs could loop, but I think its clearer to just
      explicitly test;
      """
      X_metadata = {
          "has_nans": missing,
          "is_univariate": not multivariate,
          "is_equal_length": not unequal,
      }
      handles_none = _DummyClassifier()
      handles_none_composite = _DummyComposite(_DummyClassifier())
  
      # checks that errors are raised
      if missing:
          with pytest.raises(ValueError, match=missing_message):
              handles_none._check_capabilities(X_metadata)
      if multivariate:
          with pytest.raises(ValueError, match=multivariate_message):
              handles_none._check_capabilities(X_metadata)
      if unequal:
          with pytest.raises(ValueError, match=unequal_message):
              handles_none._check_capabilities(X_metadata)
      if not missing and not multivariate and not unequal:
          handles_none._check_capabilities(X_metadata)
  
      if missing:
          with pytest.warns(UserWarning, match=missing_message):
              handles_none_composite._check_capabilities(X_metadata)
      if multivariate:
          with pytest.warns(UserWarning, match=multivariate_message):
              handles_none_composite._check_capabilities(X_metadata)
      if unequal:
          with pytest.warns(UserWarning, match=unequal_message):
              handles_none_composite._check_capabilities(X_metadata)
      if not missing and not multivariate and not unequal:
          handles_none_composite._check_capabilities(X_metadata)
  
      handles_all = _DummyHandlesAllInput()
      handles_all._check_capabilities(X_metadata)
  
imports: import pickle
  import numpy
  import pandas
  import pytest
  from sklearn.model_selection import KFold
  from sktime.classification.base import BaseClassifier
  from sktime.classification.deep_learning.base import BaseDeepClassifier
  from sktime.classification.distance_based import KNeighborsTimeSeriesClassifier
  from sktime.classification.dummy import DummyClassifier
  from sktime.utils._testing.estimator_checks import _assert_array_almost_equal
  from sktime.utils._testing.panel import _make_classification_y, _make_panel, make_classification_problem
  from sktime.utils.validation._dependencies import _check_soft_dependencies
label_desc: Use image node_id 2 for calling a global function with example usage: test_check_capabilities(missing, multivariate, unequal) without return types