Example #1
0
    def test_mail_is_not_listed_in_factory_menu(self):
        self.login(self.dossier_responsible)

        menu = FactoriesMenu(self.dossier)
        menu_items = menu.getMenuItems(self.dossier, self.dossier.REQUEST)

        self.assertNotIn('ftw.mail.mail',
                         [item.get('id') for item in menu_items])
    def test_webactions_are_shown_at_end_of_factory_menu(self):
        self.login(self.administrator)

        for obj in self.contentish_objects:
            menu = FactoriesMenu(obj)
            webaction_menu_items = menu.getMenuItems(obj, self.dossier.REQUEST)[-2:]
            self.assertIn(u'\xc4ction 1', [item.get('title') for item in webaction_menu_items])
            self.assertIn("Action 2", [item.get('title') for item in webaction_menu_items])
    def test_factory_menu_sorting(self):
        menu = FactoriesMenu(self.dossier)
        menu_items = menu.getMenuItems(self.dossier, self.dossier.REQUEST)

        self.assertEquals([
            u'Document', 'document_with_template', u'Task',
            'Add task from template', u'Subdossier', u'Participant'
        ], [item.get('title') for item in menu_items])
    def test_only_webactions_with_display_add_menu_are_shown_in_factory_menus(self):
        self.login(self.administrator)

        storage = get_storage()
        storage.update(1, {"display": "action-buttons"})

        for obj in self.contentish_objects:
            menu = FactoriesMenu(obj)
            menu_items = menu.getMenuItems(obj, self.dossier.REQUEST)
            self.assertIn(u'\xc4ction 1', [item.get('title') for item in menu_items])
            self.assertNotIn("Action 2", [item.get('title') for item in menu_items])
    def test_factory_menu_enabled_for_businesscasedossier(self):
        dossier = create(Builder('dossier'))
        menu = FactoriesMenu(dossier)
        menu_items = menu.getMenuItems(dossier, dossier.REQUEST)

        self.assertEquals(
            ['Document',
             'document_with_template',
             'document_from_officeatwork',
             'Task',
             'Add task from template',
             'Subdossier',
             'Participant'],
            [item.get('title') for item in menu_items])
Example #6
0
    def test_contentmenu_order_positions(self):
        """Check the order of the add-menu for dossiers and subdossiers
        """
        for dossier_type in self.dossier_types:
            d1 = self.create_dossier(dossier_type)
            d2 = self.create_dossier(dossier_type, subpath=d1.getId())

            # Check action label
            menu = FactoriesMenu(d1)
            menu2 = FactoriesMenu(d2)

            menu_items = menu.getMenuItems(d1, d1.REQUEST)
            menu_items2 = menu2.getMenuItems(d2, d2.REQUEST)

            # For dossiers
            for i, ordered_item in enumerate(self.default_contentmenu_order):

                menu_item_titles = [item['title'] for item in menu_items]

                # The item must be in the contentmenu
                self.assertTrue(ordered_item in menu_item_titles)

                # And must be in the correct position
                self.assertTrue(ordered_item == menu_item_titles[i])

            # For subdossiers
            for i, ordered_item in enumerate(
                    self.default_contentmenu_order_subdossier):

                menu_item_titles2 = [item['title'] for item in menu_items2]

                # The item must be in the contentmenu
                self.assertTrue(ordered_item in menu_item_titles2)

                # And must be in the correct position
                self.assertTrue(ordered_item == menu_item_titles2[i])
Example #7
0
    def test_default_labels(self):
        """Check default form labels of subdossier
        We have a special handling of labels in subdossiers.
        We have different specialdossies, but we always have the same
        text in the add, edit and action-view.
        """
        for dossier_type in self.dossier_types:
            d1 = self.create_dossier(dossier_type)

            # Check action label
            menu = FactoriesMenu(d1)
            menu_items = menu.getMenuItems(d1, d1.REQUEST)

            # mails should never be addable in a dossier (over the menu)
            self.assertTrue(
                'ftw.mail.mail' not in [item.get('id') for item in menu_items])

            # a dossier in a dossier should called subdossier
            self.assertIn(self.labels.get('action_name'),
                          [item.get('title') for item in menu_items])

            # Check title of addformular for a subdossier
            self.get_add_view(dossier_type, path=d1.absolute_url())

            self.assertEquals(
                self.labels.get('add_subdossier') in self.browser.contents,
                True)

            url = self.browser.url.split('/')[-1]
            self.assertTrue(url == '++add++%s' % dossier_type)

            # Check edit label
            d2 = self.create_dossier(dossier_type, subpath=d1.getId())
            self.get_edit_view(d2.absolute_url())
            self.assertEquals(
                self.labels.get('edit_subdossier') in self.browser.contents,
                True)
Example #8
0
 def get_factory_menu_items(self, obj):
     menu = FactoriesMenu(obj)
     return menu.getMenuItems(self.dossier, self.dossier.REQUEST)
 def setUp(self):
     super(TestFactoryMenu, self).setUp()
     self.menu = FactoriesMenu(self.portal)
Example #10
0
    def setUp(self):
        super(TestFactoryMenu, self).setUp()
        self.menu = FactoriesMenu(self.portal)

        create_client()
        set_current_client_id(self.portal)