code: def test_additional_tokens(self):
      # One with non-alphanumeric chars, one uppercase, one lowercase
      additional_tokens = ["<EOS>", "FOO", "bar"]
      encoder = text_encoder.ByteTextEncoder(
          additional_tokens=additional_tokens
      )
      # Without additional tokens
      hello_ids = [
          i + len(additional_tokens) for i in self.ZH_HELLO_IDS
      ]
      self.assertEqual(hello_ids, encoder.encode(ZH_HELLO))
      # With additional tokens
      text_additional = "%s %s%s%s" % (
          additional_tokens[0],
          ZH_HELLO,
          additional_tokens[1],
          additional_tokens[2],
      )
      expected_ids = (
          [1, 32 + 1 + len(additional_tokens)] + hello_ids + [2, 3]
      )
      self.assertEqual(expected_ids, encoder.encode(text_additional))
      self.assertEqual(text_additional, encoder.decode(expected_ids))
      self.assertEqual(
          text_encoder.NUM_BYTES + 1 + len(additional_tokens),
          encoder.vocab_size,
      )
  
imports: from __future__ import unicode_literals
  import os
  from absl.testing import parameterized
  import numpy
  from tensorflow_datasets import testing
  from tensorflow_datasets.core.deprecated.text import text_encoder
label_desc: Use image node_id 2 for calling the ByteTextEncoderTest obj's underlying member method code with example usage: obj.test_additional_tokens() without return types