code: def pytest_make_collect_report(collector):
      call = CallInfo.from_call(
          lambda: list(collector.collect()), "collect"
      )
      longrepr = None
      if not call.excinfo:
          outcome = "passed"
      else:
          from _pytest import nose
  
          skip_exceptions = (Skipped,) + nose.get_skip_exceptions()
          if call.excinfo.errisinstance(skip_exceptions):
              outcome = "skipped"
              r = collector._repr_failure_py(
                  call.excinfo, "line"
              ).reprcrash
              longrepr = (str(r.path), r.lineno, r.message)
          else:
              outcome = "failed"
              errorinfo = collector.repr_failure(call.excinfo)
              if not hasattr(errorinfo, "toterminal"):
                  errorinfo = CollectErrorRepr(errorinfo)
              longrepr = errorinfo
      rep = CollectReport(
          collector.nodeid,
          outcome,
          longrepr,
          getattr(call, "result", None),
      )
      rep.call = call  # see collect_one_node
      return rep
  
imports: from __future__ import absolute_import
  from __future__ import division
  from __future__ import print_function
  import bdb
  import os
  import sys
  from time import time
  import attr
  import six
  from .reports import CollectErrorRepr
  from .reports import CollectReport
  from .reports import TestReport
  from _pytest._code.code import ExceptionInfo
  from _pytest.compat import safe_str
  from _pytest.outcomes import Exit
  from _pytest.outcomes import Skipped
  from _pytest.outcomes import TEST_OUTCOME
label_desc: Use image node_id 17 for calling a global function with example usage: pytest_make_collect_report(collector) and returns: rep