code: def test_joiner():
      pipeline = Pipeline()
      pipeline.add_component("hello_one", Hello())
      pipeline.add_component("hello_two", Hello())
      pipeline.add_component("hello_three", Hello())
      pipeline.add_component("joiner", StringJoiner())
  
      pipeline.connect("hello_one", "hello_two")
      pipeline.connect("hello_two", "joiner")
      pipeline.connect("hello_three", "joiner")
  
      results = pipeline.run(
          {
              "hello_one": {"word": "world"},
              "hello_three": {"word": "my friend"},
          }
      )
      assert results == {
          "joiner": {
              "output": "Hello, my friend! Hello, Hello, world!!"
          }
      }
  
imports: from haystack.core.pipeline import Pipeline
  from haystack.testing.sample_components import StringJoiner, StringListJoiner, Hello, TextSplitter
  import logging
label_desc: Use image node_id 1 for calling a global function with example usage: test_joiner() without return types