def test_max_value(self): """Assert that the max_value is set correctly when setting the number of icons for the rating widget. """ max_value = 10 rating_widget = ratingWidget.RatingWidget(num_icons=max_value) self.assertEqual(rating_widget.max_value, max_value)
def test_value(self): """Assert that the value of the rating_widget is updated and retreivable. """ rating_widget = ratingWidget.RatingWidget(num_icons=5) self.assertEqual(rating_widget.value, 0) test_icon = rating_widget.icons[2] rating_widget.set_icons_active(test_icon) self.assertEqual(rating_widget.value, test_icon.value) test_icon = rating_widget.icons[4] rating_widget.set_icons_active(test_icon) self.assertEqual(rating_widget.value, test_icon.value)
def test_active_icons_visible(self): """Assert that set_active_icons_visible correctly sets the visibility for active icons. """ rating_widget = ratingWidget.RatingWidget(num_icons=5) limit = 3 self._setup_icons_active(rating_widget, limit) # Set all active icons visible. rating_widget._set_active_icons_visible() # Assert all active icons are now visible. for count, icon in enumerate(rating_widget.icons): self.assertEqual(icon.visible, bool(count < limit))
def test_eventFilter(self): """Assert that the mouse leaving the widget triggers the icons to be set to their default state. """ rating_widget = ratingWidget.RatingWidget(num_icons=5) limit = 3 self._setup_icons_active(rating_widget, limit) # Trigger the event filter rating_widget.eventFilter(rating_widget, QtCore.QEvent(QtCore.QEvent.Leave)) # Assert all active icons are now visible. for count, icon in enumerate(rating_widget.icons): self.assertEqual(icon.visible, bool(count < limit))
def test_set_icons_visible(self): """Assert that set_icons_visible correctly sets visibility up to a specified icon. """ rating_widget = ratingWidget.RatingWidget(num_icons=5) # Assert all icons are initially not visible. # Could be it's own test, but helps assert there is a change in visibility state. for icon in rating_widget.icons: self.assertFalse(icon.visible) test_icon = rating_widget.icons[2] rating_widget._set_icons_visible(test_icon) # Assert all icons with a value less than or equal to the chosen icon, # are visible. for icon in rating_widget.icons: self.assertEqual(icon.visible, (icon.value <= test_icon.value))
def test_set_icons_active(self): """Assert that set_icons_active correctly sets icons active up to a specified icon. """ rating_widget = ratingWidget.RatingWidget(num_icons=5) # Assert all icons are initially false. # Could be it's own test, but helps assert there is a change in active state. for icon in rating_widget.icons: self.assertFalse(icon.active) test_icon = rating_widget.icons[2] rating_widget.set_icons_active(test_icon) # Assert all icons with a value less than or equal to the chosen icon, # are active. for icon in rating_widget.icons: self.assertEqual(icon.active, (icon.value <= test_icon.value))
def test_num_icons(self): """Assert the correct number of icons is created. """ rating_widget = ratingWidget.RatingWidget(num_icons=3) self.assertTrue(len(rating_widget.icons) == 3)