test_pages.py 1.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980
  1. from uuid import uuid4
  2. from nicegui import ui
  3. from .user import User
  4. def test_title(user: User):
  5. @ui.page('/', title='My Custom Title')
  6. def page():
  7. ui.label('some content')
  8. user.open('/')
  9. user.should_see('My Custom Title')
  10. def test_route_with_custom_path(user: User):
  11. @ui.page('/test_route')
  12. def page():
  13. ui.label('page with custom path')
  14. user.open('/test_route')
  15. user.should_see('page with custom path')
  16. def test_auto_index_page_with_link_to_subpage(user: User):
  17. ui.link('link to subpage', '/subpage')
  18. @ui.page('/subpage')
  19. def page():
  20. ui.label('the subpage')
  21. user.open('/')
  22. user.click('link to subpage')
  23. user.should_see('the subpage')
  24. def test_link_to_page_by_passing_function(user: User):
  25. @ui.page('/subpage')
  26. def page():
  27. ui.label('the subpage')
  28. ui.link('link to subpage', page)
  29. user.open('/')
  30. user.click('link to subpage')
  31. user.should_see('the subpage')
  32. def test_creating_new_page_after_startup(user: User):
  33. user.start_server()
  34. @ui.page('/late_page')
  35. def page():
  36. ui.label('page created after startup')
  37. user.open('/late_page')
  38. user.should_see('page created after startup')
  39. def test_shared_and_individual_pages(user: User):
  40. @ui.page('/individual_page')
  41. def individual_page():
  42. ui.label(f'individual page with uuid {uuid4()}')
  43. @ ui.page('/shared_page', shared=True)
  44. def shared_page():
  45. ui.label(f'shared page with uuid {uuid4()}')
  46. user.open('/shared_page')
  47. uuid1 = user.find('shared page').text.split()[-1]
  48. user.open('/shared_page')
  49. uuid2 = user.find('shared page').text.split()[-1]
  50. assert uuid1 == uuid2
  51. user.open('/individual_page')
  52. uuid1 = user.find('individual page').text.split()[-1]
  53. user.open('/individual_page')
  54. uuid2 = user.find('individual page').text.split()[-1]
  55. assert uuid1 != uuid2