code: def test_matrix_filter_with_invalid_feature_names(self):
      (
          X_train,
          X_test,
          y_train,
          y_test,
          feature_names,
      ) = create_housing_data()
  
      # Test with invalid feature names
      model_task = ModelTask.REGRESSION
      err = "not found in dataset. Existing features"
      with pytest.raises(UserConfigValidationException, match=err):
          run_error_analyzer_on_models(
              X_train,
              y_train,
              X_test,
              y_test,
              feature_names,
              model_task,
              matrix_features=["invalid_feature"],
          )
  
imports: import numpy
  import pandas
  import pytest
  from erroranalysis._internal.cohort_filter import filter_from_cohort
  from erroranalysis._internal.constants import ARG, COLUMN, METHOD, ROW_INDEX, TRUE_Y, MatrixParams, Metrics, ModelTask, f1_metrics, metric_to_display_name, precision_metrics, recall_metrics
  from erroranalysis._internal.error_analyzer import ModelAnalyzer
  from erroranalysis._internal.matrix_filter import CATEGORY1, CATEGORY2, COUNT, FALSE_COUNT, FN, FP, INTERVAL_MAX, INTERVAL_MIN, MATRIX, METRIC_NAME, METRIC_VALUE, TN, TP, VALUES, bin_data
  from erroranalysis._internal.metrics import get_ordered_classes, is_multi_agg_metric, metric_to_func
  from rai_test_utils.datasets.tabular import create_adult_census_data, create_binary_classification_dataset, create_cancer_data, create_diabetes_data, create_housing_data, create_iris_data, create_simple_titanic_data, create_wine_data
  from rai_test_utils.models.model_utils import create_models_classification, create_models_regression
  from rai_test_utils.models.sklearn import create_kneighbors_classifier, create_titanic_pipeline
  from raiutils.exceptions import UserConfigValidationException
label_desc: Use image node_id 20 for calling the TestMatrixFilter obj's underlying member method code with example usage: obj.test_matrix_filter_with_invalid_feature_names() without return types