From 6c3e38bd695fe44c803727e9cac44b18d4938a61 Mon Sep 17 00:00:00 2001 From: ppizarror Date: Wed, 31 Mar 2021 22:35:38 -0300 Subject: [PATCH] Improve widgets tests --- test/test_widgets.py | 45 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 45 insertions(+) diff --git a/test/test_widgets.py b/test/test_widgets.py index 4178bad7..a0ce6cc6 100644 --- a/test/test_widgets.py +++ b/test/test_widgets.py @@ -474,6 +474,35 @@ def test_menubar(self) -> None: self.assertFalse(mb.update(PygameEventUtils.middle_rect_click(mb._backbox_rect, evtype=pygame.MOUSEBUTTONDOWN))) self.assertTrue(mb.update(PygameEventUtils.joy_button(pygame_menu.controls.JOY_BUTTON_BACK))) + # Test none methods + mb.rotate(10) + self.assertEqual(mb._angle, 0) + + mb.resize(10, 10) + self.assertFalse(mb._scale[0]) + self.assertEqual(mb._scale[1], 1) + self.assertEqual(mb._scale[2], 1) + + mb.scale(100, 100) + self.assertFalse(mb._scale[0]) + self.assertEqual(mb._scale[1], 1) + self.assertEqual(mb._scale[2], 1) + + mb.flip(True, True) + self.assertFalse(mb._flip[0]) + self.assertFalse(mb._flip[1]) + + mb.set_max_width(100) + self.assertIsNone(mb._max_width[0]) + + mb.set_max_height(100) + self.assertIsNone(mb._max_height[0]) + + # Ignore others + mb.set_padding() + mb.set_border() + mb.set_selection_effect() + # noinspection PyArgumentEqualDefault,PyTypeChecker def test_selector(self) -> None: """ @@ -705,6 +734,10 @@ def _assert_color(widg, cr, cg, cb) -> None: _assert_color(widget, 18, 255, 170) widget.set_value(' 59C1e5') _assert_color(widget, 89, 193, 229) + + widget.render() + widget.draw(surface) + widget.clear() self.assertEqual(widget._input_string, '#') # This cannot be empty self.assertEqual(widget._cursor_position, 1) @@ -768,6 +801,7 @@ def test_label(self) -> None: Test label widget. """ menu = MenuUtils.generic_menu() + # noinspection SpellCheckingInspection label = menu.add.label('Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod ' 'tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, ' @@ -869,6 +903,12 @@ def generator() -> str: self.assertEqual(label.get_title(), 'b') self.assertIsNone(label._title_generator) + # Label set to empty + label_e = menu.add.label('new') + self.assertRaises(ValueError, lambda: label_e.set_value('')) + label_e.set_title('') + label_e.draw(surface) + def test_clock(self) -> None: """ Test clock. @@ -1338,7 +1378,10 @@ def callback(**kwargs) -> None: btn = menu.add.button('epic', pygame_menu.events.NONE) self.assertEqual(btn._decorator._total_decor(), 0) btn.add_underline((0, 0, 0), 1, 1, force_render=True) + self.assertNotEqual(btn._last_underline[0], '') self.assertEqual(btn._decorator._total_decor(), 1) + btn.remove_underline() + self.assertEqual(btn._last_underline[0], '') # Test return fun def fun() -> str: @@ -1968,6 +2011,8 @@ def test_dropselect(self) -> None: # Test onchange test = [-1, False] + drop2.set_default_value(0) + def test_change(item, v) -> None: """ Test change.