|
2 | 2 | from django.http import HttpRequest
|
3 | 3 | from django.test import TestCase
|
4 | 4 |
|
| 5 | +from .urls import testview |
5 | 6 | from .utils import TestUser, is_main_site, is_paid_user
|
6 | 7 | from ..menu import MenuBase
|
7 | 8 | from ..templatetags.menu_generator import get_menu
|
@@ -306,3 +307,48 @@ def test_generate_menu_selected_related_urls_submenu(self):
|
306 | 307 | self.assertEqual(nav[0]["selected"], True)
|
307 | 308 | self.assertEqual(nav[0]["submenu"][0]["selected"], True)
|
308 | 309 | self.assertEqual(nav[0]["submenu"][1]["selected"], False)
|
| 310 | + |
| 311 | + def test_generate_menu_selected_related_views_simple(self): |
| 312 | + self.request.user = TestUser(authenticated=True) |
| 313 | + self.request.path = "/known-view/" |
| 314 | + self.menu.save_user_state(self.request) |
| 315 | + list_dict = [ |
| 316 | + { |
| 317 | + "name": "parent1", |
| 318 | + "url": "/user/account/", |
| 319 | + "related_views": [testview], |
| 320 | + } |
| 321 | + ] |
| 322 | + nav = self.menu.generate_menu(list_dict) |
| 323 | + |
| 324 | + self.assertEqual(len(nav), 1) |
| 325 | + self.assertEqual(nav[0]["selected"], True) |
| 326 | + |
| 327 | + def test_generate_menu_selected_related_views_submenu(self): |
| 328 | + self.request.user = TestUser(authenticated=True) |
| 329 | + self.request.path = "/known-view/" |
| 330 | + self.menu.save_user_state(self.request) |
| 331 | + list_dict = [ |
| 332 | + { |
| 333 | + "name": "parent1", |
| 334 | + "url": "/user/account/", |
| 335 | + "submenu": [ |
| 336 | + { |
| 337 | + "name": "child1", |
| 338 | + "url": '/user/account/profile/', |
| 339 | + "related_views": [testview] |
| 340 | + }, |
| 341 | + { |
| 342 | + "name": "child2", |
| 343 | + "url": 'named_url', |
| 344 | + "related_views": [] |
| 345 | + }, |
| 346 | + ], |
| 347 | + } |
| 348 | + ] |
| 349 | + nav = self.menu.generate_menu(list_dict) |
| 350 | + |
| 351 | + self.assertEqual(len(nav), 1) |
| 352 | + self.assertEqual(nav[0]["selected"], True) |
| 353 | + self.assertEqual(nav[0]["submenu"][0]["selected"], True) |
| 354 | + self.assertEqual(nav[0]["submenu"][1]["selected"], False) |
0 commit comments