def _reload_menus(self): menu_pool.clear(all=True) menu_pool.discover_menus() # All cms menu modifiers should be removed from menu_pool.modifiers # so that they do not interfere with our menu nodes menu_pool.modifiers = [m for m in menu_pool.modifiers if m.__module__.startswith("djangocms_blog")] self._reset_menus()
def setUp(self): super(BaseMenuTest, self).setUp() if not menu_pool.discovered: menu_pool.discover_menus() self.old_menu = menu_pool.menus menu_pool.menus = {'CMSMenu': self.old_menu['CMSMenu']} menu_pool.clear(settings.SITE_ID)
def setUp(self): super(MenuTestCase, self).setUp() from django.utils import translation translation.activate('en-us') self.admin = user_model.objects.create_superuser(username='******', email="*****@*****.**", password='******') self.scribe = user_model.objects.create_user(username='******', password='******') g = Group.objects.get(name='scribe') g.user_set.add(self.scribe) g.save() from lib import cmstestutil cmstestutil.refresh_cms_apps() cmstestutil.create_stock_test_pages() # What we are doing here is saving the menu setup on the first # run of this test. We will use it in tearDown to restore the # menus to their pre-expansion values. We need to do this # because the primary keys of the pages that carry apps will # change with each test. However, without doing this, the # expanded menus will refer to primary keys that no longer # exist. from menus.menu_pool import menu_pool menu_pool.discover_menus() if self.saved_menus is None: self.saved_menus = dict(menu_pool.menus)
def setUp(self): if not menu_pool.discovered: menu_pool.discover_menus() self.old_menu = menu_pool.menus menu_pool.menus = { 'CMSMenu': self.old_menu['CMSMenu'], 'TestMenu': TestMenu }
def test_nav_extenders_valid(self): if not menu_pool.discovered: menu_pool.discover_menus() self.old_menu = menu_pool.menus menu_pool.menus = {"TestMenu": TestMenu()} page = create_page(navigation_extenders="TestMenu", **self._get_default_create_page_arguments()) self.assertEqual(page.navigation_extenders, "TestMenu") menu_pool.menus = self.old_menu
def test_nav_extenders_invalid_type(self): if not menu_pool.discovered: menu_pool.discover_menus() self.old_menu = menu_pool.menus menu_pool.menus = {'TestMenu': TestMenu()} self.assertRaises(AssertionError, create_page, navigation_extenders=1, **self._get_default_create_page_arguments()) menu_pool.menus = self.old_menu
def setUp(self): if not menu_pool.discovered: menu_pool.discover_menus() self.old_menu = menu_pool.menus menu_pool.menus = { 'CMSMenu': self.old_menu['CMSMenu'], 'TestMenu': TestMenu() }
def test_nav_extenders_valid(self): if not menu_pool.discovered: menu_pool.discover_menus() self.old_menu = menu_pool.menus menu_pool.menus = {'TestMenu': TestMenu()} page = create_page(navigation_extenders='TestMenu', **self._get_default_create_page_arguments()) self.assertEqual(page.navigation_extenders, 'TestMenu') menu_pool.menus = self.old_menu
def setUp(self): super(BaseMenuTest, self).setUp() u = User(username="******", is_staff = True, is_active = True, is_superuser = True) u.set_password("test") u.save() self.login_user(u) if not menu_pool.discovered: menu_pool.discover_menus() self.old_menu = menu_pool.menus menu_pool.menus = {'CMSMenu':self.old_menu['CMSMenu']} menu_pool.clear(settings.SITE_ID)
def setUp(self): if not menu_pool.discovered: menu_pool.discover_menus() self.old_menu = menu_pool.menus # NOTE: if we're going to directly manipulate this menu pool, we should # at least be marking it as not _expanded. menu_pool.menus = { 'CMSMenu': self.old_menu['CMSMenu'], 'TestMenu': TestMenu } menu_pool._expanded = False
def setUp(self): settings.CMS_MODERATOR = False u = User(username="******", is_staff = True, is_active = True, is_superuser = True) u.set_password("test") u.save() self.login_user(u) if not menu_pool.discovered: menu_pool.discover_menus() self.old_menu = menu_pool.menus menu_pool.menus = {'CMSMenu':self.old_menu['CMSMenu']} menu_pool.clear(settings.SITE_ID) self.create_some_nodes()
def setUp(self): with SettingsOverride(CMS_MODERATOR = False): u = User(username="******", is_staff = True, is_active = True, is_superuser = True) u.set_password("test") u.save() self.login_user(u) menu_pool.clear(settings.SITE_ID) if not menu_pool.discovered: menu_pool.discover_menus() self.old_menu = menu_pool.menus menu_pool.menus = {'CMSMenu':self.old_menu['CMSMenu'], 'TestMenu':TestMenu()}
def setUp(self): super(MenuTest, self).setUp() self.cats = [self.category_1] for i, lang_data in enumerate(self._categories_data): cat = self._get_category(lang_data["en"]) if "it" in lang_data: cat = self._get_category(lang_data["it"], cat, "it") self.cats.append(cat) activate("en") menu_pool.discover_menus() # All cms menu modifiers should be removed from menu_pool.modifiers # so that they do not interfere with our menu nodes menu_pool.modifiers = [m for m in menu_pool.modifiers if m.__module__.startswith("djangocms_blog")]
def setUp(self): super(MenuTest, self).setUp() self.cats = [self.category_1] for i, cat_data in enumerate(self.cat_data['en']): cat = self._get_category(cat_data) if i < len(self.cat_data['it']): cat = self._get_category(self.cat_data['it'][i], cat, 'it') self.cats.append(cat) activate('en') menu_pool.discover_menus() # All cms menu modifiers should be removed from menu_pool.modifiers # so that they do not interfere with our menu nodes menu_pool.modifiers = [m for m in menu_pool.modifiers if m.__module__.startswith('djangocms_blog')]
def setUp(self): super(MenuTest, self).setUp() self.cats = [self.category_1] cache.clear() for i, lang_data in enumerate(self._categories_data): cat = self._get_category(lang_data['en']) if 'it' in lang_data: cat = self._get_category(lang_data['it'], cat, 'it') self.cats.append(cat) activate('en') menu_pool.clear(all=True) menu_pool.discover_menus() # All cms menu modifiers should be removed from menu_pool.modifiers # so that they do not interfere with our menu nodes menu_pool.modifiers = [m for m in menu_pool.modifiers if m.__module__.startswith('djangocms_blog')] cache.clear()
def test_get_menus(self): """ Check that menus are dynamically loaded according to the different page the apphook is attached to """ titles = self.create_base_structure('VariableUrlsApp', ['en', 'de']) titles[0].page.reverse_id = 'page1' titles[0].page.save() cache.clear() self.reload_urls() menu_pool.discover_menus() cache.clear() request = self.get_request('/') nodes = menu_pool.get_nodes(request) nodes_urls = [node.url for node in nodes] self.assertTrue(reverse('sample-account') in nodes_urls) self.assertFalse('/en/child_page/page2/' in nodes_urls) self.reload_urls() self.apphook_clear() cache.clear() self.reload_urls() page2 = create_page('page2', 'nav_playground.html', 'en', created_by=self.superuser, published=True, parent=titles[0].page.get_draft_object().parent, in_navigation=True, apphook='VariableUrlsApp', reverse_id='page2') create_title('de', 'de_title', page2, slug='slug') page2.publish('de') request = self.get_request('/page2/') nodes = menu_pool.get_nodes(request) nodes_urls = [node.url for node in nodes] self.assertTrue(reverse('sample-account') in nodes_urls) self.assertTrue(reverse('sample2-root') in nodes_urls) self.assertTrue('/static/fresh/' in nodes_urls) self.apphook_clear()
def setUp(self): with SettingsOverride(CMS_MODERATOR=False): u = User(username="******", is_staff=True, is_active=True, is_superuser=True) u.set_password("test") u.save() self.login_user(u) menu_pool.clear(settings.SITE_ID) if not menu_pool.discovered: menu_pool.discover_menus() self.old_menu = menu_pool.menus menu_pool.menus = { 'CMSMenu': self.old_menu['CMSMenu'], 'TestMenu': TestMenu() }
def test_core_cms_menu_is_removed(self): menu_pool.discover_menus() registered_menus = menu_pool.get_registered_menus(for_rendering=True) self.assertNotIn(OriginalCMSMenu, registered_menus.values()) self.assertIn(CMSMenu, registered_menus.values())
def setUp(self): if not menu_pool.discovered: menu_pool.discover_menus() self.old_menu = menu_pool.menus menu_pool.menus = {"CMSMenu": self.old_menu["CMSMenu"], "TestMenu": TestMenu()}
def test_core_cms_menu_is_removed(self): menu_pool.discover_menus() registered_menus = menu_pool.get_registered_menus(for_rendering=True) self.assertNotIn(CMSMenu.__name__, registered_menus) self.assertIn(CMSVersionedMenu.__name__, registered_menus)