|
@@ -23,7 +23,22 @@ def test_session_data_is_stored_in_the_browser(screen: Screen):
|
|
|
screen.should_contain('3')
|
|
|
screen.open('/session')
|
|
|
screen.should_contain('count = 3')
|
|
|
- # assert screen.selenium.g(f'http://localhost:{PORT}/session').json() == 3
|
|
|
+
|
|
|
+
|
|
|
+def test_session_storage_supports_asyncio(screen: Screen):
|
|
|
+ @ui.page('/')
|
|
|
+ async def page():
|
|
|
+ ui.session.get()['count'] = ui.session.get().get('count', 0) + 1
|
|
|
+ await asyncio.sleep(0.5)
|
|
|
+ ui.label(ui.session.get()['count'] or 'no session')
|
|
|
+
|
|
|
+ screen.open('/')
|
|
|
+ screen.switch_to(1)
|
|
|
+ screen.open('/')
|
|
|
+ screen.should_contain('2')
|
|
|
+ screen.switch_to(0)
|
|
|
+ screen.open('/')
|
|
|
+ screen.should_contain('3')
|
|
|
|
|
|
# ui.input('name').bind_value(request.session, 'key')
|
|
|
|