test_session.py 929 B

123456789101112131415161718192021222324252627282930313233
  1. import requests
  2. from nicegui import app, globals, ui
  3. from .screen import PORT, Screen
  4. def test_session_data_is_stored_in_the_browser(screen: Screen):
  5. @ui.page('/')
  6. def page():
  7. ui.session.get()['count'] = ui.session.get().get('count', 0) + 1
  8. ui.label(ui.session.get()['count'] or 'no session')
  9. @app.get('/session')
  10. def session():
  11. return 'count = ' + str(ui.session.get()['count'])
  12. screen.open('/')
  13. screen.should_contain('1')
  14. screen.open('/')
  15. screen.should_contain('2')
  16. screen.open('/')
  17. screen.should_contain('3')
  18. screen.open('/session')
  19. screen.should_contain('count = 3')
  20. # assert screen.selenium.g(f'http://localhost:{PORT}/session').json() == 3
  21. # ui.input('name').bind_value(request.session, 'key')
  22. # screen.open('/')
  23. # screen.find('input').send_keys('some text')
  24. # screen.open('/')
  25. # screen.should_contain('some text')