code: def test_main(self):
      feat_getter = FeatsFromSpacyDocAndEmpath(
          empath_analyze_function=mock_empath_analyze
      )
      sys.modules["empath"] = Mock(analyze=mock_empath_analyze)
      FeatsFromSpacyDocAndEmpath()
      doc = whitespace_nlp("Hello this is a document.")
      term_freq = feat_getter.get_feats(doc)
      self.assertEqual(
          set(term_freq.items()),
          set(
              {
                  "document": 1,
                  "hello": 1,
                  "is": 1,
                  "this": 1,
                  "a document": 1,
                  "hello this": 1,
                  "is a": 1,
                  "a": 1,
                  "this is": 1,
              }.items()
          ),
      )
      metadata_freq = feat_getter.get_doc_metadata(doc)
      self.assertEqual(metadata_freq["ridicule"], 1)
      self.assertNotIn("empath_fashion", metadata_freq)
  
file_path: scattertext/scattertext/test/test_featsFromSpacyDocAndEmpath.py
imports: import sys
  from collections import Counter
  from unittest import TestCase
  from unittest.mock import Mock
  from scattertext import whitespace_nlp
  from scattertext.features.FeatsFromOnlyEmpath import FeatsFromOnlyEmpath
  from scattertext.features.FeatsFromSpacyDocAndEmpath import FeatsFromSpacyDocAndEmpath
label_desc: Use image node_id 1 for calling the TestFeatsFsromSpacyDocAndEmpath obj's underlying member method code with example usage: obj.test_main() without return types