test_rating.py 534 B

123456789101112131415161718
  1. from nicegui import ui
  2. from nicegui.testing import Screen
  3. def test_rating_click(screen: Screen):
  4. rating = ui.rating(value=2)
  5. ui.label().bind_text_from(rating, 'value', lambda x: f'Value: {x}')
  6. screen.open('/')
  7. rating_icons = screen.find_all_by_class('q-rating__icon-container')
  8. rating_icons[0].click()
  9. screen.should_contain('Value: 1')
  10. rating_icons[3].click()
  11. screen.should_contain('Value: 4')
  12. rating_icons[3].click() # already selected, should unselect
  13. screen.should_contain('Value: 0')