code: def test_classifier_output_shape(
      dataspec: Dict,
      expected_shape: Tuple[int, ...],
      make_voting_classifier: Callable[..., VotingClassifier],
      make_data: Callable[..., Tuple[np.ndarray, np.ndarray]],
  ) -> None:
      """
      Parameters
      ----------
      dataspec : Dict
          The spec to make data of
  
      expected_shape : Tuple[int, ...]
          The expected shape of the output of _model_predict
  
      Fixtures
      --------
      make_voting_classifier : Callable[..., VotingClassifier]
          Factory to make a voting classifier which _model_predict expects
  
      make_data : Callable[..., Tuple[np.ndarray, np.ndarray]]
          Factory to make data according to a spec
  
      Expects
      -------
      * The output shape after predicting should be the expected shape
  
      Note
      ----
      * The output shape for MULTILABEL_CLASSIFICATION seems wrong according to
  
      """
      task = dataspec["kind"]
      X, y = make_data(**dataspec)
  
      voter = make_voting_classifier(X=X, y=y)
  
      output = _model_predict(voter, X, task=task)
      assert output.shape == expected_shape
  
file_path: auto-sklearn/test/test_automl/test_model_predict.py
imports: from typing import Callable, Dict, Tuple
  import warnings
  import numpy
  from sklearn.ensemble import VotingClassifier, VotingRegressor
  from autosklearn.automl import _model_predict
  from autosklearn.constants import BINARY_CLASSIFICATION, MULTICLASS_CLASSIFICATION, MULTILABEL_CLASSIFICATION, MULTIOUTPUT_REGRESSION, REGRESSION
  from autosklearn.util.logging_ import PicklableClientLogger
  from pytest_cases import parametrize
label_desc: Use image node_id 1 for calling a global function with example usage: test_classifier_output_shape(dataspec, expected_shape, make_voting_classifier, make_data) without return types