code: def test_inni003_invalid_numbers_range(dash_dcc, input_range_app):
      dash_dcc.start_server(input_range_app)  # range [10, 10000] step=3
  
      elem_range = dash_dcc.find_element("#range")
      elem_range.send_keys("1999")
      assert dash_dcc.find_element("#out").text == "1999"
  
      for invalid_number in ("0.0", "12", "10e10"):
          elem_range.send_keys(invalid_number)
          dash_dcc.wait_for_text_to_equal(
              "#out", ""
          ), "invalid value should return none"
          dash_dcc.clear_input(elem_range)
  
      elem_range.send_keys("-13")
      dash_dcc.wait_for_text_to_equal(
          "#out", ""
      ), "invalid value should return none"
  
      time.sleep(0.5)
      dash_dcc.percy_snapshot("inni003 - number out of range")
  
      assert dash_dcc.get_logs() == []
  
imports: import time
  import sys
  from selenium.webdriver.common.keys import Keys
label_desc: Use image node_id 3 for calling a global function with example usage: test_inni003_invalid_numbers_range(dash_dcc, input_range_app) without return types