def test_extract_attachment_without_docs_shows_warning_message(self, browser): mail = create(Builder('mail').within(self.dossier)) browser.login().open(mail, view='extract_attachments') self.assertEquals(['This mail has no attachments to extract.'], statusmessages.messages().get('warning')) self.assertEquals(mail.absolute_url(), browser.url)
def test_messages(self, browser): browser.open(view='test-statusmessages') self.assertEquals( {'info': ['An info message.'], 'warning': ['A warning message.'], 'error': ['An error message.']}, statusmessages.messages(browser=browser))
def test_creation_moves_document_in_to_the_forwarding(self, browser): doc1 = create(Builder('document').within(self.inbox).titled(u'Doc 1')) doc2 = create(Builder('document').within(self.inbox).titled(u'Doc 2')) doc3 = create(Builder('document').within(self.inbox).titled(u'Doc 3')) data = { 'paths': ['/'.join(doc.getPhysicalPath()) for doc in [doc1, doc3]] } browser.login().open(self.inbox, data, view='++add++opengever.inbox.forwarding') browser.fill({ 'Title': u'Test forwarding', 'Responsible': 'inbox:client1' }) browser.css('#form-buttons-save').first.click() forwarding = self.inbox.get('forwarding-1') self.assertEqual(['Item created'], statusmessages.messages().get('info')) self.assertEqual([doc1, doc3], forwarding.listFolderContents()) self.assertEqual([doc2], self.inbox.listFolderContents( {'portal_type': 'opengever.document.document'}))
def test_at_least_one_document_references_is_required(self, browser): self.login(self.secretariat_user, browser=browser) browser.open(self.inbox, view='++add++opengever.inbox.forwarding') messages = statusmessages.messages() self.assertEqual( ['Error: Please select at least one document to forward.'], messages.get('error'))
def test_usera_cuts_docs_folder_contents(self, browser): """Check if we are able to cut docs over folder_contents.""" browser.login(self.user_a).open(self.folder_a, view='folder_contents') folder_contents.select(self.doc_a, self.doc_b) folder_contents.form().find('Cut').click() self.assertEqual({'info': ['2 item(s) cut.'], 'warning': [], 'error': []}, statusmessages.messages())
def test_shows_info_statusmessage_by_success(self, browser): browser.login().open(self.mail, view='extract_attachments') browser.fill({'attachments:list': ['1']}).submit() self.assertEquals([u'Created document B\xfccher'], statusmessages.messages().get('info')) self.assertEquals('http://nohost/plone/dossier-1/#documents', browser.url)
def test_assert_no_error_messages(self, browser): browser.open(view='test-statusmessages?type=warning') self.assertEquals( {'info': [], 'warning': ['A warning message.'], 'error': []}, statusmessages.messages(browser=browser)) self.assertTrue(statusmessages.assert_no_error_messages(browser=browser))
def test_without_selecting_attachments_shows_error_statusmessage(self, browser): browser.login().open(self.mail, view='extract_attachments') browser.forms.get('form').submit() self.assertEquals(['You have not selected any attachments.'], statusmessages.messages().get('error')) self.assertEquals( 'http://nohost/plone/dossier-1/document-1/extract_attachments', browser.url)
def test_stays_on_inbox_container_when_current_inbox_not_available( self, browser): self.client1_inbox = create( Builder('inbox').titled(u'Client1 Inbox').within( self.container).having(responsible_org_unit='client2')) browser.login().open(self.container) self.assertEqual(self.container.absolute_url(), browser.url) self.assertEquals(['Your not allowed to access the inbox of Client1.'], statusmessages.messages().get('warning'))
def test_update_all_sepcifications(self, browser): browser.login(SITE_OWNER_NAME).visit(view='lawgiver-list-specs') browser.find('Update all specifications').click() infos = map(methodcaller('replace', TESTS_PATH, '...'), statusmessages.messages()['info']) self.assertIn( 'role-translation: The workflow was generated to .../profiles' '/role-translation/workflows/role-translation/definition.xml.', infos) self.assertIn( 'role-translation: The translations were updated in your' ' locales directory. You should now run bin/i18n-build', infos) self.assertIn( 'invalid-spec: Error while generating the workflow:' ' Action "viewX" is neither action group nor transition.', statusmessages.messages()['error'])
def test_stays_on_inbox_container_when_current_inbox_not_available(self, browser): self.client1_inbox = create(Builder('inbox') .titled(u'Client1 Inbox') .within(self.container) .having(responsible_org_unit='client2')) browser.login().open(self.container) self.assertEqual(self.container.absolute_url(), browser.url) self.assertEquals( ['Your not allowed to access the inbox of Client1'], statusmessages.messages().get('warning'))
def test_usera_cuts_docs_folder_contents(self, browser): """Check if we are able to cut docs over folder_contents.""" browser.login(self.user_a).open(self.folder_a, view='folder_contents') folder_contents.select(self.doc_a, self.doc_b) folder_contents.form().find('Cut').click() self.assertEqual( { 'info': ['2 item(s) cut.'], 'warning': [], 'error': [] }, statusmessages.messages())
def test_userb_cuts_docs_folder_contents(self, browser): """Check if the permission also works when we cut over folder_contents. """ browser.login(self.user_b).open(self.folder_a, view='folder_contents') folder_contents.select(self.doc_a, self.doc_b) folder_contents.form().find('Cut').click() self.assertEqual({'info': [], 'warning': [], 'error': ['One or more items not moveable.']}, statusmessages.messages())
def test_userb_remove_docs_folder_contents(self, browser): """Check if the permission also works when we delete over folder_contents. """ browser.login(self.user_b).open(self.folder_a, view='folder_contents') folder_contents.select(self.doc_a, self.doc_b) folder_contents.form().find('Delete').click() self.assertEqual( {'info': ['/plone/rootfolder/folder-a/doc-a' ' could not be deleted.'], 'warning': [], 'error': []}, statusmessages.messages())
def test_userb_cuts_docs_folder_contents(self, browser): """Check if the permission also works when we cut over folder_contents. """ browser.login(self.user_b).open(self.folder_a, view='folder_contents') folder_contents.select(self.doc_a, self.doc_b) folder_contents.form().find('Cut').click() self.assertEqual( { 'info': [], 'warning': [], 'error': ['One or more items not moveable.'] }, statusmessages.messages())
def test_userb_remove_docs_folder_contents(self, browser): """Check if the permission also works when we delete over folder_contents. """ browser.login(self.user_b).open(self.folder_a, view='folder_contents') folder_contents.select(self.doc_a, self.doc_b) folder_contents.form().find('Delete').click() self.assertEqual( { 'info': ['/plone/rootfolder/folder-a/doc-a' ' could not be deleted.'], 'warning': [], 'error': [] }, statusmessages.messages())
def test_creation_moves_document_in_to_the_forwarding(self, browser): doc1 = create(Builder("document").within(self.inbox).titled(u"Doc 1")) doc2 = create(Builder("document").within(self.inbox).titled(u"Doc 2")) doc3 = create(Builder("document").within(self.inbox).titled(u"Doc 3")) data = {"paths": ["/".join(doc.getPhysicalPath()) for doc in [doc1, doc3]]} browser.login().open(self.inbox, data, view="++add++opengever.inbox.forwarding") browser.fill({"Title": u"Test forwarding", "Responsible": "inbox:client1"}).submit() browser.css("#form-buttons-save").first.click() forwarding = self.inbox.get("forwarding-1") self.assertEqual(["Item created"], statusmessages.messages().get("info")) self.assertEqual([doc1, doc3], forwarding.listFolderContents()) self.assertEqual([doc2], self.inbox.listFolderContents({"portal_type": "opengever.document.document"}))
def test_creation_moves_document_in_to_the_forwarding(self, browser): self.login(self.secretariat_user, browser=browser) doc1 = create(Builder('document').within(self.inbox).titled(u'Doc 1')) doc2 = create(Builder('document').within(self.inbox).titled(u'Doc 2')) doc3 = create(Builder('document').within(self.inbox).titled(u'Doc 3')) data = { 'paths': ['/'.join(doc.getPhysicalPath()) for doc in [doc1, doc3]]} browser.open( self.inbox, data, view='++add++opengever.inbox.forwarding') browser.fill({'Title': u'Test forwarding', 'Responsible': 'inbox:fa'}) browser.css('#form-buttons-save').first.click() forwarding = self.inbox.objectValues()[-1] self.assertEqual(['Item created'], statusmessages.messages().get('info')) self.assertEqual([doc1, doc3], forwarding.listFolderContents()) self.assertIn(doc2, self.inbox.listFolderContents())
def test_at_least_one_document_references_is_required(self, browser): browser.login().open(self.inbox, view="++add++opengever.inbox.forwarding") messages = statusmessages.messages() self.assertEqual(["Error: Please select at least one document to forward"], messages.get("error"))