code: def test_calculate_importance_force_permutation_fail_on_timeout(
      iris_split_dataset_and_model,
  ):
      # Arrange
      train_ds, _, adaboost = iris_split_dataset_and_model
  
      # Assert
      assert_that(
          calling(run_fi_calculation).with_args(
              adaboost,
              train_ds,
              force_permutation=True,
              permutation_kwargs={"timeout": 0},
          ),
          raises(
              DeepchecksTimeoutError,
              "Skipping permutation importance calculation",
          ),
      )
  
imports: import pandas
  import pytest
  from hamcrest import any_of, assert_that, calling, close_to, contains_exactly, contains_string, equal_to, has_length, is_, none, not_none, raises
  from sklearn.ensemble import AdaBoostClassifier
  from sklearn.linear_model import LinearRegression, LogisticRegression
  from sklearn.neural_network import MLPClassifier, MLPRegressor
  from sklearn.pipeline import Pipeline
  from deepchecks.core.errors import DeepchecksTimeoutError, DeepchecksValueError, ModelValidationError
  from deepchecks.tabular.dataset import Dataset
  from deepchecks.tabular.utils.feature_importance import _calculate_feature_importance, calculate_feature_importance_or_none, column_importance_sorter_df, column_importance_sorter_dict, validate_feature_importance
  from deepchecks.tabular.utils.task_inference import get_all_labels, infer_classes_from_model, infer_task_type_by_class_number, infer_task_type_by_labels
  from deepchecks.tabular.utils.task_type import TaskType
label_desc: Use image node_id 10 for calling a global function with example usage: test_calculate_importance_force_permutation_fail_on_timeout(iris_split_dataset_and_model) without return types