code: def test_rdpr001_persisted_dps(dash_dcc):
      app = Dash(__name__, suppress_callback_exceptions=True)
      app.layout = html.Div(
          [
              html.Button("fire callback", id="btn", n_clicks=1),
              html.Div(
                  children=[
                      html.Div(id="container"),
                      html.P("dps", id="dps-p"),
                  ]
              ),
          ]
      )
  
      # changing value of date with each callback to verify
      # persistenceTransforms is stripping the time-part from the date-time
      @app.callback(
          Output("container", "children"), [Input("btn", "n_clicks")]
      )
      def update_output(value):
          return dcc.DatePickerSingle(
              id="dps",
              min_date_allowed=datetime(2020, 1, 1),
              max_date_allowed=datetime(2020, 1, 7),
              date=datetime(2020, 1, 3, 1, 1, 1, value),
              persistence=True,
              persistence_type="session",
          )
  
      @app.callback(Output("dps-p", "children"), [Input("dps", "date")])
      def display_dps(value):
          return value
  
      dash_dcc.start_server(app)
  
      dash_dcc.select_date_single("dps", day="2")
      dash_dcc.wait_for_text_to_equal("#dps-p", "2020-01-02")
      dash_dcc.find_element("#btn").click()
      dash_dcc.wait_for_text_to_equal("#dps-p", "2020-01-02")
  
      assert dash_dcc.get_logs() == []
  
label_desc: Use image node_id 1 for calling a global function with example usage: test_rdpr001_persisted_dps(dash_dcc) and returns: dcc, value