code: def test_delete_all_revisions(self) -> None:
      strategy = HFCacheInfo.delete_revisions(
          self.cache_info,
          "repo_A_rev_detached",
          "repo_A_rev_pr_1",
          "repo_A_rev_main",
      )
      expected = DeleteCacheStrategy(
          expected_freed_size=4444,
          blobs=set(),
          refs=set(),
          repos={
              Path("repo_A")
          },  # No remaining revisions: full repo is deleted
          snapshots=set(),
      )
      self.assertEqual(strategy, expected)
  
imports: import os
  import tempfile
  import time
  import unittest
  from pathlib import Path
  from unittest.mock import Mock
  import pytest
  from huggingface_hub._snapshot_download import snapshot_download
  from huggingface_hub.commands.scan_cache import ScanCacheCommand
  from huggingface_hub.utils import DeleteCacheStrategy, HFCacheInfo, capture_output, scan_cache_dir
  from huggingface_hub.utils._cache_manager import CacheNotFound, _format_size, _format_timesince, _try_delete_path
  from .testing_constants import TOKEN
  from .testing_utils import rmtree_with_retry, with_production_testing, xfail_on_windows
label_desc: Use image node_id 5 for calling the TestDeleteRevisionsDryRun obj's underlying member method code with example usage: obj.test_delete_all_revisions() without return types