code: def test_describe_output_single():
      """
      This pipeline has one output:
      {"c": {"z": {"type": int}}}
      """
      A = component_class(
          "A", input_types={"x": Optional[int]}, output={"x": 0}
      )
      B = component_class("B", input_types={"y": int}, output={"y": 0})
      C = component_class(
          "C", input_types={"x": int, "y": int}, output={"z": 0}
      )
      p = Pipeline()
      p.add_component("a", A())
      p.add_component("b", B())
      p.add_component("c", C())
      p.connect("a.x", "c.x")
      p.connect("b.y", "c.y")
  
      assert p.outputs() == {"c": {"z": {"type": int}}}
  
imports: from typing import Optional
  import logging
  import pytest
  from haystack.core.pipeline import Pipeline
  from haystack.core.component.sockets import InputSocket, OutputSocket
  from haystack.core.errors import PipelineMaxLoops, PipelineError, PipelineRuntimeError
  from haystack.testing.sample_components import AddFixedValue, Threshold, Double, Sum
  from haystack.testing.factory import component_class
label_desc: Use image node_id 16 for calling a global function with example usage: test_describe_output_single() without return types