code: def test_show_multi_test_fixture_setup_and_teardown_same_as_setup_show(
      pytester: Pytester,
  ) -> None:
      """Verify that SETUP/TEARDOWN messages match what comes out of --setup-show."""
      pytester.makepyfile(
          """
          import pytest
          @pytest.fixture(scope = 'session')
          def sess():
              return True
          @pytest.fixture(scope = 'module')
          def mod():
              return True
          @pytest.fixture(scope = 'class')
          def cls():
              return True
          @pytest.fixture(scope = 'function')
          def func():
              return True
          def test_outside(sess, mod, cls, func):
              assert True
          class TestCls:
              def test_one(self, sess, mod, cls, func):
                  assert True
              def test_two(self, sess, mod, cls, func):
                  assert True
      """
      )
  
      plan_result = pytester.runpytest("--setup-plan")
      show_result = pytester.runpytest("--setup-show")
  
      # the number and text of these lines should be identical
      plan_lines = [
          line
          for line in plan_result.stdout.lines
          if "SETUP" in line or "TEARDOWN" in line
      ]
      show_lines = [
          line
          for line in show_result.stdout.lines
          if "SETUP" in line or "TEARDOWN" in line
      ]
  
      assert plan_lines == show_lines
  
imports: from _pytest.pytester import Pytester
label_desc: Use image node_id 3 for calling a global function with example usage: test_show_multi_test_fixture_setup_and_teardown_same_as_setup_show(pytester) without return types