code: def test_feature_selection(boston_train):
      X, y, feature_names = boston_train
  
      sel = SelectFromModel(
          PermutationImportance(
              RandomForestRegressor(n_estimators=20, random_state=42),
              cv=3,
              random_state=42,
              refit=False,
          ),
          threshold=0.1,
      )
      pipe = make_pipeline(sel, SVR(C=10, gamma="auto"))
      score1 = cross_val_score(pipe, X, y).mean()
      score2 = cross_val_score(SVR(C=10, gamma="auto"), X, y).mean()
      print(score1, score2)
      assert score1 > score2
  
      sel.fit(X, y)
      selected = {
          feature_names[idx] for idx in sel.get_support(indices=True)
      }
      assert selected == {"LSTAT", "RM"}
  
imports: import pytest
  import numpy
  from sklearn.base import is_classifier, is_regressor
  from sklearn.svm import SVR, SVC
  from sklearn.ensemble import RandomForestRegressor, RandomForestClassifier
  from sklearn.model_selection import train_test_split, cross_val_score
  from sklearn.pipeline import make_pipeline
  from sklearn.feature_selection import SelectFromModel
  from sklearn.linear_model import LogisticRegression
  import eli5
  from eli5.sklearn import PermutationImportance
  from .utils import format_as_all
label_desc: Use image node_id 10 for calling a global function with example usage: test_feature_selection(boston_train) without return types