code: def test_repo_versioning(self):
      # This repo has two tokenizer files, one for v4.0.0 and above with an added token, one for versions lower.
      repo = "hf-internal-testing/test-two-tokenizers"
  
      # This should pick the new tokenizer file as the version of Transformers is > 4.0.0
      tokenizer = AutoTokenizer.from_pretrained(repo)
      self.assertEqual(len(tokenizer), 28997)
      json_tokenizer = json.loads(tokenizer._tokenizer.to_str())
      self.assertIn("huggingface", json_tokenizer["model"]["vocab"])
  
      # Testing an older version by monkey-patching the version in the module it's used.
      import transformers as old_transformers
  
      old_transformers.tokenization_utils_base.__version__ = "3.0.0"
      old_tokenizer = (
          old_transformers.models.auto.AutoTokenizer.from_pretrained(
              repo
          )
      )
      self.assertEqual(len(old_tokenizer), 28996)
      json_tokenizer = json.loads(old_tokenizer._tokenizer.to_str())
      self.assertNotIn("huggingface", json_tokenizer["model"]["vocab"])
  
imports: import concurrent.futures
  import json
  import os
  import shutil
  import tempfile
  import unittest
  from transformers import AutoTokenizer, PreTrainedTokenizerFast
  from transformers.testing_utils import require_tokenizers
  from ..test_tokenization_common import TokenizerTesterMixin
label_desc: Use image node_id 2 for calling the TokenizerVersioningTest obj's underlying member method code with example usage: obj.test_repo_versioning() without return types