test_interactive_image.py 905 B

12345678910111213141516171819202122232425262728
  1. from nicegui import Client, ui
  2. from .screen import Screen
  3. def test_set_source_in_tab(screen: Screen):
  4. """https://github.com/zauberzeug/nicegui/issues/488"""
  5. @ui.page('/')
  6. async def page(client: Client):
  7. with ui.tabs() as tabs:
  8. ui.tab('A')
  9. ui.tab('B')
  10. with ui.tab_panels(tabs, value='A'):
  11. with ui.tab_panel('A'):
  12. ui.label('Tab A')
  13. img = ui.interactive_image()
  14. with ui.tab_panel('B'):
  15. ui.label('Tab B')
  16. await client.connected()
  17. img.set_source('https://nicegui.io/logo.png')
  18. screen.open('/')
  19. screen.wait(0.5)
  20. assert screen.find_by_tag('img').get_attribute('src') == 'https://nicegui.io/logo.png'
  21. screen.click('B')
  22. screen.wait(0.5)
  23. screen.click('A')
  24. assert screen.find_by_tag('img').get_attribute('src') == 'https://nicegui.io/logo.png'