code: def test_firstresult_returns_none(pm: PluginManager) -> None:
      """If None results are returned by underlying implementations ensure
      the multi-call loop returns a None value.
      """
  
      class Api:
          @hookspec(firstresult=True)
          def hello(self, arg):
              "api hook 1"
  
      pm.add_hookspecs(Api)
  
      class Plugin1:
          @hookimpl
          def hello(self, arg):
              return None
  
      pm.register(Plugin1())
      res = pm.hook.hello(arg=3)
      assert res is None
  
file_path: catboost/contrib/python/pluggy/py3/tests/test_invocations.py
imports: from typing import Iterator
  import pytest
  from pluggy import HookimplMarker
  from pluggy import HookspecMarker
  from pluggy import PluginManager
  from pluggy import PluginValidationError
label_desc: Use image node_id 8 for calling a global function with example usage: test_firstresult_returns_none(pm) and returns: None