1.basic.py 1.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. import subprocess
  2. import time
  3. from selenium.webdriver import Chrome
  4. import pywebio
  5. import template
  6. import util
  7. from pywebio import start_server
  8. from pywebio.input import *
  9. from pywebio.session import set_env
  10. from pywebio.utils import run_as_function
  11. def target():
  12. set_env(auto_scroll_bottom=True)
  13. template.set_defer_call()
  14. template.basic_output()
  15. template.background_output()
  16. run_as_function(template.basic_input())
  17. actions(buttons=['Continue'])
  18. template.background_input()
  19. def test(server_proc: subprocess.Popen, browser: Chrome):
  20. template.test_output(browser, enable_percy=True)
  21. template.test_input(browser, enable_percy=True)
  22. time.sleep(1)
  23. template.save_output(browser, '1.basic.html')
  24. browser.get('http://localhost:8080/') # to close current session
  25. template.test_defer_call()
  26. def start_test_server():
  27. pywebio.enable_debug()
  28. start_server(target, port=8080, host='127.0.0.1', auto_open_webbrowser=False, cdn=False)
  29. if __name__ == '__main__':
  30. util.run_test(start_test_server, test)