code: def test_fillna_feature_generator(generator_helper, data_helper):
      # Given
      input_data = data_helper.generate_multi_feature_full()
      expected_output_data = input_data.fillna(
          {
              "int": np.nan,
              "float": np.nan,
              "obj": "",
              "cat": np.nan,
              "datetime": np.nan,
              "text": "",
              "datetime_as_object": "",
          },
          downcast=False,
      )
  
      generator = FillNaFeatureGenerator()
  
      expected_feature_metadata_in_full = {
          ("category", ()): ["cat"],
          ("datetime", ()): ["datetime"],
          ("float", ()): ["float"],
          ("int", ()): ["int_bool", "int"],
          ("object", ()): ["obj"],
          ("object", ("datetime_as_object",)): ["datetime_as_object"],
          ("object", ("text",)): ["text"],
      }
  
      expected_feature_metadata_full = expected_feature_metadata_in_full
  
      # When
      output_data = generator_helper.fit_transform_assert(
          input_data=input_data,
          generator=generator,
          expected_feature_metadata_in_full=expected_feature_metadata_in_full,
          expected_feature_metadata_full=expected_feature_metadata_full,
      )
  
      assert expected_output_data.equals(output_data)
  
imports: import copy
  import numpy
  from autogluon.features.generators import FillNaFeatureGenerator
label_desc: Use image node_id 1 for calling a global function with example usage: test_fillna_feature_generator(generator_helper, data_helper) without return types