def test_document_has_to_be_checked_in(self): document = create(Builder('document').trashed().checked_out()) checker = RemoveConditionsChecker(document) self.assertFalse(checker.removal_allowed()) self.assert_error_messages([u'The document is still checked out.'], checker.error_msg)
def test_document_must_be_trashed(self): document = create(Builder('document')) checker = RemoveConditionsChecker(document) self.assertFalse(checker.removal_allowed()) self.assert_error_messages( [u'The document is not trashed.'], checker.error_msg)
def test_document_must_be_trashed(self): self.login(self.manager) checker = RemoveConditionsChecker(self.empty_document) self.assertFalse(checker.removal_allowed()) self.assert_error_messages( [u'The document is not trashed.'], checker.error_msg)
def test_document_must_be_trashed(self): self.login(self.manager) checker = RemoveConditionsChecker(self.empty_document) self.assertFalse(checker.removal_allowed()) self.assert_error_messages([u'The document is not trashed.'], checker.error_msg)
def test_document_has_to_be_checked_in(self): document = create(Builder('document') .trashed() .checked_out()) checker = RemoveConditionsChecker(document) self.assertFalse(checker.removal_allowed()) self.assert_error_messages( [u'The document is still checked out.'], checker.error_msg)
def test_document_must_not_already_be_removed(self): self.login(self.manager) self.trash_documents(self.empty_document) Remover([self.empty_document]).remove() checker = RemoveConditionsChecker(self.empty_document) self.assertFalse(checker.removal_allowed()) self.assert_error_messages([u'The document is already removed.'], checker.error_msg)
def test_document_must_not_have_relations(self): document_a = create(Builder('document')) document_b = create( Builder('document').trashed().relate_to([document_a])) checker = RemoveConditionsChecker(document_b) self.assertFalse(checker.removal_allowed()) self.assert_error_messages([u'The document contains relations.'], checker.error_msg)
def test_document_must_not_have_relations(self): document_a = create(Builder('document')) document_b = create(Builder('document') .trashed() .relate_to([document_a])) checker = RemoveConditionsChecker(document_b) self.assertFalse(checker.removal_allowed()) self.assert_error_messages( [u'The document contains relations.'], checker.error_msg)
def test_document_must_not_already_be_removed(self): self.login(self.manager) self.trash_documents(self.empty_document) Remover([self.empty_document]).remove() checker = RemoveConditionsChecker(self.empty_document) self.assertFalse(checker.removal_allowed()) self.assert_error_messages( [u'The document is already removed.'], checker.error_msg)
def verify_documents(self): self.items = [] self.allowed = True for document in self.get_selected_documents(): checker = RemoveConditionsChecker(document) allowed = checker.removal_allowed() self.items.append({'document': document, 'allowed': allowed, 'error_msg': checker.error_msg}) if not allowed: self.allowed = False
def test_document_must_not_have_backreferences(self): document_a = create(Builder('document').trashed()) document_b = create( Builder('document').titled('Doc b').relate_to([document_a])) notify(ObjectModifiedEvent(document_b)) checker = RemoveConditionsChecker(document_a) self.assertFalse(checker.removal_allowed()) self.assert_error_messages([ u'The document is referred by the document(s) <a href=http://nohost/plone/document-2>Doc b</a>.' ], checker.error_msg)
def verify_documents(self): self.items = [] self.allowed = True for document in self.get_selected_documents(): checker = RemoveConditionsChecker(document) allowed = checker.removal_allowed() self.items.append({ 'document': document, 'allowed': allowed, 'error_msg': checker.error_msg }) if not allowed: self.allowed = False
def test_document_must_not_have_backreferences(self, browser): self.login(self.manager, browser=browser) self.trash_documents(self.empty_document) browser.open(self.taskdocument, view='edit') browser.fill({'Related Documents': [self.empty_document]}) browser.find('Save').click() checker = RemoveConditionsChecker(self.empty_document) self.assertFalse(checker.removal_allowed()) self.assert_error_messages( [u'The document is referred by <a href={}>opengever.document.document: {}</a>.'.format( self.taskdocument.absolute_url(), self.taskdocument.title)], checker.error_msg)
def test_document_must_not_have_backreferences(self, browser): self.login(self.manager, browser=browser) self.trash_documents(self.empty_document) browser.open(self.taskdocument, view='edit') browser.fill({'Related Documents': [self.empty_document]}) browser.find('Save').click() checker = RemoveConditionsChecker(self.empty_document) self.assertFalse(checker.removal_allowed()) self.assert_error_messages([ u'The document is referred by <a href={}>opengever.document.document: {}</a>.' .format(self.taskdocument.absolute_url(), self.taskdocument.title) ], checker.error_msg)
def test_check_does_not_fail_if_document_has_no_longer_existent_backrefs(self): document_a = create(Builder('document') .trashed()) document_b = create(Builder('document') .titled('Doc b') .relate_to([document_a])) checker = RemoveConditionsChecker(document_a) self.assertFalse(checker.removal_allowed()) with elevated_privileges(): api.content.delete(obj=document_b) checker = RemoveConditionsChecker(document_a) self.assertTrue(checker.removal_allowed())
def test_document_must_not_have_backreferences(self): document_a = create(Builder('document') .trashed()) document_b = create(Builder('document') .titled('Doc b') .relate_to([document_a])) notify(ObjectModifiedEvent(document_b)) checker = RemoveConditionsChecker(document_a) self.assertFalse(checker.removal_allowed()) self.assert_error_messages( [u'The document is referred by the document(s) <a href=http://nohost/plone/document-2>Doc b</a>.'], checker.error_msg)
def test_check_does_not_fail_if_document_has_no_longer_existent_backrefs(self, browser): self.login(self.manager, browser=browser) browser.open(self.taskdocument, view='edit') browser.fill({'Related Documents': [self.empty_document]}) browser.find('Save').click() self.trash_documents(self.empty_document) checker = RemoveConditionsChecker(self.empty_document) self.assertFalse(checker.removal_allowed()) with elevated_privileges(): api.content.delete(obj=self.taskdocument) checker = RemoveConditionsChecker(self.empty_document) self.assertTrue(checker.removal_allowed())
def test_check_does_not_fail_if_document_has_no_longer_existent_backrefs( self): document_a = create(Builder('document').trashed()) document_b = create( Builder('document').titled('Doc b').relate_to([document_a])) checker = RemoveConditionsChecker(document_a) self.assertFalse(checker.removal_allowed()) with elevated_privileges(): api.content.delete(obj=document_b) checker = RemoveConditionsChecker(document_a) self.assertTrue(checker.removal_allowed())
def test_check_does_not_fail_if_document_has_no_longer_existent_backrefs( self, browser): self.login(self.manager, browser=browser) browser.open(self.taskdocument, view='edit') browser.fill({'Related Documents': [self.empty_document]}) browser.find('Save').click() self.trash_documents(self.empty_document) checker = RemoveConditionsChecker(self.empty_document) self.assertFalse(checker.removal_allowed()) with elevated_privileges(): api.content.delete(obj=self.taskdocument) checker = RemoveConditionsChecker(self.empty_document) self.assertTrue(checker.removal_allowed())
def test_removal_allowed(self): document = create(Builder('document').trashed()) checker = RemoveConditionsChecker(document) self.assertTrue(checker.removal_allowed())
def test_removal_allowed(self): self.login(self.manager) self.trash_documents(self.empty_document) checker = RemoveConditionsChecker(self.empty_document) self.assertTrue(checker.removal_allowed())
def test_document_must_be_trashed(self): document = create(Builder('document')) checker = RemoveConditionsChecker(document) self.assertFalse(checker.removal_allowed()) self.assert_error_messages([u'The document is not trashed.'], checker.error_msg)