code: def test_special_tokens(self):
      tokens = ["a", "b", "c", SPECIAL_TOKENS[1]]
      vocab = Vocabulary(tokens, use_special_tokens=True)
  
      self.assertEqual(vocab.size, len(SPECIAL_TOKENS) + 3)
      self.assertListEqual(
          vocab.idx2tok, SPECIAL_TOKENS + ["a", "b", "c"]
      )
  
      tok2idx = defaultdict()
      for tok in SPECIAL_TOKENS + tokens:
          tok2idx.setdefault(tok, len(tok2idx))
      self.assertDictEqual(vocab.tok2idx, tok2idx)
  
imports: import unittest
  from collections import defaultdict
  import numpy
  import numpy.testing
  from cornac.data import TextModality, ReviewModality
  from cornac.data.text import SPECIAL_TOKENS, DEFAULT_PRE_RULES, BaseTokenizer, Vocabulary, CountVectorizer, TfidfVectorizer
label_desc: Use image node_id 8 for calling the TestVocabulary obj's underlying member method code with example usage: obj.test_special_tokens() without return types