5.coroutine_based_session.py 924 B

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. import subprocess
  2. import time
  3. from percy import percySnapshot
  4. from selenium.webdriver import Chrome
  5. import pywebio
  6. import template
  7. import util
  8. from pywebio.input import *
  9. from pywebio.output import *
  10. from pywebio.utils import to_coroutine
  11. from pywebio import start_server
  12. async def target():
  13. template.basic_output()
  14. await template.coro_background_output()
  15. await to_coroutine(template.basic_input())
  16. await actions(buttons=['Continue'])
  17. await template.coro_background_input()
  18. def test(server_proc: subprocess.Popen, browser: Chrome):
  19. template.test_output(browser)
  20. time.sleep(1)
  21. template.test_input(browser)
  22. time.sleep(1)
  23. template.save_output(browser, '5.coroutine_based_session.html')
  24. def start_test_server():
  25. pywebio.enable_debug()
  26. start_server(target, port=8080, host='127.0.0.1', cdn=False)
  27. if __name__ == '__main__':
  28. util.run_test(start_test_server, test)