docstr: Unit test get_list_features_names 1
docstr_tok: ["Unit","test","get_list_features_names","1"]
code: def test_get_list_features_names_1(self):
      """
      Unit test get_list_features_names 1
      """
      train = pd.DataFrame(
          {
              "city": ["chicago", "paris"],
              "state": ["US", "FR"],
              "other": [5, 10],
          },
          index=["index1", "index2"],
      )
  
      columns_dict = {
          i: features for i, features in enumerate(train.columns)
      }
  
      enc = ColumnTransformer(
          transformers=[
              ("Ordinal_ce", ce.OrdinalEncoder(), ["city", "state"]),
              ("Ordinal_skp", skp.OrdinalEncoder(), ["city", "state"]),
          ],
          remainder="passthrough",
      )
  
      enc_2 = ColumnTransformer(
          transformers=[
              ("Ordinal_ce", ce.OrdinalEncoder(), ["city", "state"]),
              ("Ordinal_skp", skp.OrdinalEncoder(), ["city", "state"]),
          ],
          remainder="drop",
      )
  
      enc.fit(train)
      train_1 = pd.DataFrame(
          enc.transform(train),
          columns=[
              "city_ce",
              "state_ce",
              "city_skp",
              "state_skp",
              "other",
          ],
      )
      train_1["y"] = np.array([1, 0])
  
      enc_2.fit(train)
      train_2 = pd.DataFrame(
          enc_2.transform(train),
          columns=["city_ce", "state_ce", "city_skp", "state_skp"],
      )
      train_2["y"] = np.array([1, 0])
  
      enc_3 = ce.OneHotEncoder(cols=["city", "state"])
      enc_3.fit(train)
      train_3 = enc_3.transform(train)
      train_3["y"] = np.array([1, 0])
  
      dict_4 = {
          "col": "state",
          "mapping": pd.Series(data=[1, 2], index=["US", "FR"]),
          "data_type": "object",
      }
  
      dict_5 = {
          "col": "city",
          "mapping": pd.Series(data=[1, 2], index=["chicago", "paris"]),
          "data_type": "object",
      }
  
      enc_4 = [enc_3, [dict_4]]
  
      enc_5 = [enc_3, [dict_4, dict_5]]
  
      list_1 = get_list_features_names([enc], columns_dict)
      list_2 = get_list_features_names([enc_2], columns_dict)
      list_3 = get_list_features_names([enc_3], columns_dict)
      list_4 = get_list_features_names(enc_4, columns_dict)
      list_5 = get_list_features_names(enc_5, columns_dict)
  
      assert len(list_1) == 5
      assert len(list_2) == 4
      assert len(list_3) == 5
      assert len(list_4) == 5
      assert len(list_5) == 5
  
imports: import unittest
  import pandas
  import numpy
  import category_encoders
  from sklearn.compose import ColumnTransformer
  import sklearn.preprocessing
  import catboost
  import sklearn
  import lightgbm
  import xgboost
  from shapash.utils.transform import inverse_transform
  from shapash.utils.transform import apply_preprocessing
  from shapash.utils.columntransformer_backend import get_feature_names, get_names, get_list_features_names, get_col_mapping_ct
  from sklearn.ensemble import GradientBoostingClassifier
label_desc: Use image node_id 34 for calling the TestInverseTransformColumnsTransformer obj's underlying member method code with example usage: obj.test_get_list_features_names_1() without return types