code: def test_dtps010_local_and_session_persistence(dash_dcc):
      app = Dash(__name__)
      app.layout = html.Div(
          [
              dcc.DatePickerSingle(
                  id="dps-local", persistence=True, day_size=47
              ),
              dcc.DatePickerSingle(
                  id="dps-session",
                  persistence=True,
                  persistence_type="session",
                  day_size=47,
              ),
          ]
      )
  
      dash_dcc.start_server(app)
  
      assert not dash_dcc.find_element(
          "#dps-local input"
      ).get_attribute("value") and not dash_dcc.find_element(
          "#dps-session input"
      ).get_attribute(
          "value"
      ), "component should contain no initial date"
  
      for idx in range(3):
          local = dash_dcc.select_date_single("dps-local", index=idx)
          session = dash_dcc.select_date_single(
              "dps-session", index=idx
          )
          dash_dcc.wait_for_page()
          assert (
              dash_dcc.find_element("#dps-local input").get_attribute(
                  "value"
              )
              == local
              and dash_dcc.find_element(
                  "#dps-session input"
              ).get_attribute("value")
              == session
          ), "the date value should be consistent after refresh"
  
      assert dash_dcc.get_logs() == []
  
file_path: dash/components/dash-core-components/tests/integration/calendar/test_date_picker_single.py
imports: from datetime import datetime, timedelta
  import pandas
  import time
  import pytest
  import werkzeug
  from dash import Dash, Input, Output, html, dcc, no_update
label_desc: Use image node_id 2 for calling a global function with example usage: test_dtps010_local_and_session_persistence(dash_dcc) without return types