code: def test_cache_show(pytester: Pytester) -> None:
      result = pytester.runpytest("--cache-show")
      assert result.ret == 0
      result.stdout.fnmatch_lines(["*cache is empty*"])
      pytester.makeconftest(
          """
          def pytest_configure(config):
              config.cache.set("my/name", [1,2,3])
              config.cache.set("my/hello", "world")
              config.cache.set("other/some", {1:2})
              dp = config.cache.mkdir("mydb")
              dp.joinpath("hello").touch()
              dp.joinpath("world").touch()
      """
      )
      result = pytester.runpytest()
      assert result.ret == 5  # no tests executed
  
      result = pytester.runpytest("--cache-show")
      result.stdout.fnmatch_lines(
          [
              "*cachedir:*",
              "*- cache values for '[*]' -*",
              "cache/nodeids contains:",
              "my/name contains:",
              "  [1, 2, 3]",
              "other/some contains:",
              "  {*'1': 2}",
              "*- cache directories for '[*]' -*",
              "*mydb/hello*length 0*",
              "*mydb/world*length 0*",
          ]
      )
      assert result.ret == 0
  
      result = pytester.runpytest("--cache-show", "*/hello")
      result.stdout.fnmatch_lines(
          [
              "*cachedir:*",
              "*- cache values for '[*]/hello' -*",
              "my/hello contains:",
              "  *'world'",
              "*- cache directories for '[*]/hello' -*",
              "d/mydb/hello*length 0*",
          ]
      )
      stdout = result.stdout.str()
      assert "other/some" not in stdout
      assert "d/mydb/world" not in stdout
      assert result.ret == 0
  
imports: import os
  import shutil
  from pathlib import Path
  from typing import Generator
  from typing import List
  import pytest
  from _pytest.config import ExitCode
  from _pytest.monkeypatch import MonkeyPatch
  from _pytest.pytester import Pytester
  from _pytest.tmpdir import TempPathFactory
label_desc: Use image node_id 3 for calling a global function with example usage: test_cache_show(pytester) without return types