diff --git a/plinth/tests/test_templatetags.py b/plinth/tests/test_templatetags.py index 9068daecd..45bfc8396 100644 --- a/plinth/tests/test_templatetags.py +++ b/plinth/tests/test_templatetags.py @@ -18,49 +18,45 @@ Test module for custom Django template tags. """ -import unittest - from plinth.templatetags import plinth_extras -class TestShowSubSubMenu(unittest.TestCase): - """Verify that the highlighting of the subsubmenu is working correctly""" +def _assert_active_url(menu, url): + """Verify that only the given url is set as 'active' in the menu""" + for item in menu: + if item['url'] == url: + assert item['active'] + else: + assert not item['active'] - def assert_active_url(self, menu, url): - """Verify that only the given url is set as 'active' in the menu""" - for item in menu: - if item['url'] == url: - self.assertTrue(item['active']) - else: - self.assertFalse(item['active']) - @staticmethod - def _verify_active_menuitems(menu): - """Verify that one and only one menuitem is marked as active""" - return sum([item['active'] for item in menu]) == 1 +def _verify_active_menuitems(menu): + """Verify that one and only one menuitem is marked as active""" + return sum([item['active'] for item in menu]) == 1 - def test_highlighting(self): - """Test detection of active subsubmenu items using request.path""" - menu = [{ - 'url': '/abc/123/abc/', - 'text': 'abc' - }, { - 'url': '/abc/123/', - 'text': 'overview' - }, { - 'url': '/abc/123/crunch/', - 'text': 'crunch' - }, { - 'url': '/abc/123/create/', - 'text': 'create' - }] - tests = [['/abc/123/crunch/new/', '/abc/123/crunch/'], [ - '/abc/123/create/', '/abc/123/create/' - ], ['/abc/123/nolink/', '/abc/123/'], ['/abc/123/abx/', '/abc/123/'], - ['/abc/123/ab/', '/abc/123/'], ['/abc/123/', '/abc/123/']] +def test_highlighting(): + """Test detection of active subsubmenu items using request.path""" + menu = [{ + 'url': '/abc/123/abc/', + 'text': 'abc' + }, { + 'url': '/abc/123/', + 'text': 'overview' + }, { + 'url': '/abc/123/crunch/', + 'text': 'crunch' + }, { + 'url': '/abc/123/create/', + 'text': 'create' + }] - for check_path, expected_active_path in tests: - menu = plinth_extras.mark_active_menuitem(menu, check_path) - self.assert_active_url(menu, expected_active_path) - self.assertTrue(self._verify_active_menuitems(menu)) + tests = [['/abc/123/crunch/new/', '/abc/123/crunch/'], [ + '/abc/123/create/', '/abc/123/create/' + ], ['/abc/123/nolink/', '/abc/123/'], ['/abc/123/abx/', '/abc/123/'], + ['/abc/123/ab/', '/abc/123/'], ['/abc/123/', '/abc/123/']] + + for check_path, expected_active_path in tests: + menu = plinth_extras.mark_active_menuitem(menu, check_path) + _assert_active_url(menu, expected_active_path) + assert _verify_active_menuitems(menu)