code: def test_vectorizer_empty_token_case():
      """
      We ignore empty tokens right now but sklearn treats them as a character
      we might want to look into this more but
      this should not be a concern for most pipelines
      """
      corpus = [
          "a b ",
      ]
  
      # we have extra null token here
      # we slightly diverge from sklearn here as not treating it as a token
      res = CountVectorizer(preprocessor=lambda s: s).fit_transform(
          Series(corpus)
      )
      ref = SkCountVect(
          preprocessor=lambda s: s, tokenizer=lambda s: s.split(" ")
      ).fit_transform(corpus)
      cp.testing.assert_array_equal(res.todense(), ref.toarray())
  
      res = HashingVectorizer(preprocessor=lambda s: s).fit_transform(
          Series(corpus)
      )
      ref = SkHashVect(
          preprocessor=lambda s: s, tokenizer=lambda s: s.split(" ")
      ).fit_transform(corpus)
      assert_almost_equal_hash_matrices(
          res.todense().get(), ref.toarray()
      )
  
imports: from cuml.internals.safe_imports import cpu_only_import
  from cuml.internals.safe_imports import cpu_only_import_from
  from cuml.internals.safe_imports import gpu_only_import_from
  from sklearn.feature_extraction.text import TfidfVectorizer
  from sklearn.feature_extraction.text import HashingVectorizer
  from sklearn.feature_extraction.text import CountVectorizer
  import pytest
  from cuml.feature_extraction.text import CountVectorizer
  from cuml.feature_extraction.text import TfidfVectorizer
  from cuml.feature_extraction.text import HashingVectorizer
  from cuml.internals.safe_imports import gpu_only_import
label_desc: Use image node_id 27 for calling a global function with example usage: test_vectorizer_empty_token_case() without return types