code: def test_from_dict_without_connection_receiver():
      data = {
          "metadata": {"test": "test"},
          "max_loops_allowed": 100,
          "components": {},
          "connections": [{"sender": "some.sender"}],
      }
      with pytest.raises(PipelineError) as err:
          Pipeline.from_dict(data)
  
      err.match(
          "Missing receiver in connection: {'sender': 'some.sender'}"
      )
  
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 10 for calling a global function with example usage: test_from_dict_without_connection_receiver() without return types