code: def _test_umap(self, g, use_cols, targets, name, kind, df):
      for use_col in use_cols:
          for target in targets:
              for feature_engine in ["none", "auto", "pandas"]:
                  logger.debug("*" * 90)
                  print("*" * 90)
                  value = [target, use_col]
                  print(f"{kind} -- {name}")
                  print(f"{value}: featurize umap {feature_engine}")
                  print("-" * 80)
  
                  logger.debug(f"{kind} -- {name}")
                  logger.debug(
                      f"{value}: featurize umap {feature_engine}"
                  )
                  logger.debug("-" * 80)
                  g2 = g.umap(
                      kind=kind,
                      y=target,
                      X=use_col,
                      model_name=model_avg_name,
                      feature_engine=feature_engine,
                      n_neighbors=2,
                      dbscan=False,
                  )
  
                  self.cases_test_graph(g2, kind=kind, df=df)
  
imports: from xml.sax.handler import feature_external_ges
  import pytest
  import unittest
  import warnings
  import graphistry
  import os
  import logging
  import numpy
  import pandas
  from graphistry import Plottable
  from graphistry.feature_utils import remove_internal_namespace_if_present
  from graphistry.tests.test_feature_utils import ndf_reddit, text_cols_reddit, meta_cols_reddit, good_cols_reddit, single_target_reddit, double_target_reddit, edge_df, edge_df2, edge2_target_df, model_avg_name, lazy_import_has_min_dependancy, check_allclose_fit_transform_on_same_data
  from graphistry.umap_utils import lazy_umap_import_has_dependancy, lazy_cuml_import_has_dependancy, lazy_cudf_import_has_dependancy
label_desc: Use image node_id 5 for calling the TestUMAPMethods obj's underlying member method code with example usage: obj._test_umap(g, use_cols, targets, name, kind, df) without return types