code: def test_drop_columns_when_more_columns_in_test_than_train(
      df_vartypes, df_na
  ):
      train = df_vartypes.copy()
      train = train.drop(
          "City", axis=1
      )  # to remove more than one column
      test = df_na.copy()
  
      match_columns = MatchVariables(missing_values="ignore")
      match_columns.fit(train)
  
      transformed_df = match_columns.transform(test)
  
      expected_result = test.drop(columns=["Studies", "City"])
  
      # test init params
      assert match_columns.fill_value is np.nan
      assert match_columns.verbose is True
      assert match_columns.missing_values == "ignore"
      # test fit attrs
      assert list(match_columns.feature_names_in_) == list(
          train.columns
      )
      assert match_columns.n_features_in_ == 4
      # test transform output
      pd.testing.assert_frame_equal(expected_result, transformed_df)
  
file_path: feature_engine/tests/test_preprocessing/test_match_columns.py
imports: import numpy
  import pandas
  import pytest
  from sklearn.exceptions import NotFittedError
  from feature_engine.preprocessing import MatchVariables
label_desc: Use image node_id 3 for calling a global function with example usage: test_drop_columns_when_more_columns_in_test_than_train(df_vartypes, df_na) without return types