code: def test_cbpi002_pattern_matching(flavor, dash_duo):
      # a clone of cbpi001 just throwing it through the pattern-matching machinery
      app = make_app(flavor)
  
      layout = html.Div(
          [
              html.Button(
                  "click", id={"i": 0, "j": "btn"}, className="btn"
              ),
              html.Div("A", id={"i": 0, "j": "a"}, className="a"),
              html.Div("B", id={"i": 0, "j": "b"}, className="b"),
              html.Div("C", id={"i": 0, "j": "c"}, className="c"),
              html.Div("D", id={"i": 0, "j": "d"}, className="d"),
              html.Div("E", id={"i": 0, "j": "e"}, className="e"),
              html.Div("F", id={"i": 0, "j": "f"}, className="f"),
          ]
      )
      content_callback(app, flavor, layout)
  
      const_callback(
          app,
          flavor,
          "Click",
          Output({"i": MATCH, "j": "a"}, "children"),
          [Input({"i": MATCH, "j": "btn"}, "n_clicks")],
          prevent_initial_call=True,
      )
  
      concat_callback(
          app,
          flavor,
          Output({"i": MATCH, "j": "b"}, "children"),
          [Input({"i": MATCH, "j": "a"}, "children")],
      )
  
      concat_callback(
          app,
          flavor,
          Output({"i": MATCH, "j": "c"}, "children"),
          [Input({"i": MATCH, "j": "a"}, "children")],
          prevent_initial_call=True,
      )
  
      @app.callback(
          Output({"i": MATCH, "j": "d"}, "children"),
          [Input({"i": MATCH, "j": "d"}, "style")],
      )
      def d(_):
          raise PreventUpdate
  
      concat_callback(
          app,
          flavor,
          Output({"i": MATCH, "j": "e"}, "children"),
          [
              Input({"i": MATCH, "j": "a"}, "children"),
              Input({"i": MATCH, "j": "d"}, "children"),
          ],
      )
  
      concat_callback(
          app,
          flavor,
          Output({"i": MATCH, "j": "f"}, "children"),
          [
              Input({"i": MATCH, "j": "a"}, "children"),
              Input({"i": MATCH, "j": "b"}, "children"),
              Input({"i": MATCH, "j": "d"}, "children"),
          ],
          prevent_initial_call=True,
      )
  
      dash_duo.start_server(app)
  
      # check from the end, to ensure the callbacks are all done
      dash_duo.wait_for_text_to_equal(".f", "AAD")
      dash_duo.wait_for_text_to_equal(".e", "AD"),
      dash_duo.wait_for_text_to_equal(".d", "D")
      dash_duo.wait_for_text_to_equal(".c", "C")
      dash_duo.wait_for_text_to_equal(".b", "A")
      dash_duo.wait_for_text_to_equal(".a", "A")
  
      dash_duo.find_element(".btn").click()
  
      dash_duo.wait_for_text_to_equal(".f", "ClickClickD")
      dash_duo.wait_for_text_to_equal(".e", "ClickD"),
      dash_duo.wait_for_text_to_equal(".d", "D")
      dash_duo.wait_for_text_to_equal(".c", "Click")
      dash_duo.wait_for_text_to_equal(".b", "Click")
      dash_duo.wait_for_text_to_equal(".a", "Click")
  
file_path: dash/tests/integration/callbacks/test_prevent_initial.py
imports: import json
  import pytest
  from flaky import flaky
  from dash import Dash, Input, Output, MATCH, html
  from dash.exceptions import PreventUpdate
label_desc: Use image node_id 6 for calling a global function with example usage: test_cbpi002_pattern_matching(flavor, dash_duo) without return types