code: def test_get_feature_names_out(estimator):
      """Check feature names for dict learning estimators."""
      estimator.fit(X)
      n_components = X.shape[1]
  
      feature_names_out = estimator.get_feature_names_out()
      estimator_name = estimator.__class__.__name__.lower()
      assert_array_equal(
          feature_names_out,
          [f"{estimator_name}{i}" for i in range(n_components)],
      )
  
imports: import itertools
  import warnings
  from functools import partial
  import numpy
  import pytest
  import sklearn
  from sklearn.base import clone
  from sklearn.decomposition import DictionaryLearning, MiniBatchDictionaryLearning, SparseCoder, dict_learning, dict_learning_online, sparse_encode
  from sklearn.decomposition._dict_learning import _update_dict
  from sklearn.exceptions import ConvergenceWarning
  from sklearn.utils import check_array
  from sklearn.utils._testing import TempMemmap, assert_allclose, assert_array_almost_equal, assert_array_equal, ignore_warnings
  from sklearn.utils.estimator_checks import check_transformer_data_not_an_array, check_transformer_general, check_transformers_unfitted
  from sklearn.utils.parallel import Parallel
label_desc: Use image node_id 46 for calling a global function with example usage: test_get_feature_names_out(estimator) without return types