code: def test_remove_feature_names_pipe_and_skl_transformer_that_adds_features(
      df_vartypes, input_features
  ):
      features_in = ["Age", "Marks"]
      df = df_vartypes[features_in].copy()
  
      pipe = Pipeline(
          [
              ("poly", PolynomialFeatures()),
              ("transformer", MockSelector()),
          ]
      )
      pipe.fit(df)
  
      assert pipe.get_feature_names_out(
          input_features=input_features
      ) == [
          "Marks",
          "Age^2",
          "Age Marks",
          "Marks^2",
      ]
  
imports: import numpy
  import pytest
  from sklearn.exceptions import NotFittedError
  from sklearn.impute import SimpleImputer
  from sklearn.pipeline import Pipeline
  from sklearn.preprocessing import PolynomialFeatures
  from feature_engine._base_transformers.mixins import GetFeatureNamesOutMixin
  from feature_engine.dataframe_checks import check_X
label_desc: Use image node_id 20 for calling a global function with example usage: test_remove_feature_names_pipe_and_skl_transformer_that_adds_features(df_vartypes, input_features) without return types