docstr: Unit test check_contribution_object 1
code: def test_check_contribution_object_1(self):
      """
      Unit test check_contribution_object 1
      """
      contributions_1 = [
          np.array([[2, 1], [8, 4]]),
          np.array([[5, 5], [0, 0]]),
      ]
  
      contributions_2 = np.array([[2, 1], [8, 4]])
      model = lambda: None
      model._classes = np.array([1, 3])
      model.predict = types.MethodType(self.predict, model)
      model.predict_proba = types.MethodType(self.predict_proba, model)
      _case = "classification"
      _classes = list(model._classes)
  
      check_contribution_object(_case, _classes, contributions_1)
      assert len(contributions_1) == len(_classes)
      assert isinstance(contributions_1, list)
  
      check_contribution_object("regression", None, contributions_2)
      assert isinstance(contributions_2, np.ndarray)
  
      with self.assertRaises(ValueError):
          check_contribution_object(_case, _classes, contributions_2)
          check_mask_params("regression", None, contributions_1)
  
imports: import unittest
  import pytest
  import pandas
  import numpy
  import category_encoders
  from shapash.utils.check import check_preprocessing, check_model, check_label_dict, check_mask_params, check_y, check_contribution_object, check_preprocessing_options, check_postprocessing, check_consistency_model_features, check_consistency_model_label, check_additional_data
  from sklearn.compose import ColumnTransformer
  import sklearn.preprocessing
  import types
  import sklearn.ensemble
  import sklearn.svm
  import sklearn.linear_model
  import xgboost
  import lightgbm
  import catboost
label_desc: Use image node_id 16 for calling the TestCheck obj's underlying member method code with example usage: obj.test_check_contribution_object_1() without return types