def test_zip_export_excerpt_is_not_exported(self, browser): excerpt = create(Builder('document') .titled(u'Excerpt') .attach_file_containing(u"excerpt", u"excerpt.docx") .within(self.dossier)) generated_excerpt = create(Builder('generated_excerpt') .for_document(excerpt)) # restore session by refreshing instance generated_excerpt = GeneratedExcerpt.get(generated_excerpt.document_id) meeting = create( Builder('meeting') .having(committee=self.committee.load_model(), start=self.localized_datetime(2013, 1, 1, 8, 30), end=self.localized_datetime(2013, 1, 1, 10, 30), location='There', presidency=self.hugo, participants=[self.peter, self.hans, self.roland], secretary=self.sile, excerpt_documents=[generated_excerpt], ) .link_with(self.meeting_dossier)) browser.login().open(meeting.get_url(view='zipexport')) zip_file = ZipFile(StringIO(browser.contents), 'r') self.assertNotIn('excerpt.docx', zip_file.namelist())
def create_database_entry(self, meeting, document): excerpt = GeneratedExcerpt( oguid=Oguid.for_object(document), generated_version=document.get_current_version()) meeting.excerpt_documents.append(excerpt) return excerpt
def create_database_entry(self, meeting, document): version = document.get_current_version_id(missing_as_zero=True) excerpt = GeneratedExcerpt( oguid=Oguid.for_object(document), generated_version=version) meeting.excerpt_documents.append(excerpt) return excerpt
def create_database_entry(self, meeting, document): excerpt = GeneratedExcerpt( oguid=Oguid.for_object(document), generated_version=document.get_current_version()) self.proposal.submitted_excerpt_document = excerpt return excerpt
def create_database_entry(self, meeting, document): version = document.get_current_version_id(missing_as_zero=True) excerpt = GeneratedExcerpt( oguid=Oguid.for_object(document), generated_version=version) self.proposal.submitted_excerpt_document = excerpt return excerpt
def register_excerpt(self, document_intid): """Adds a GeneratedExcerpt database entry and a corresponding proposalhistory entry. """ version = self.submitted_excerpt_document.generated_version excerpt = GeneratedExcerpt(admin_unit_id=self.admin_unit_id, int_id=document_intid, generated_version=version) self.session.add(excerpt) self.excerpt_document = excerpt
def return_excerpt(self, document): """Return the selected excerpt to the proposals originating dossier. The document is registered as official excerpt for this proposal and copied to the dossier. Future edits in the excerpt document will be synced to the proposals dossier. """ assert document in self.resolve_submitted_proposal().get_excerpts() version = document.get_current_version_id(missing_as_zero=True) excerpt = GeneratedExcerpt(oguid=Oguid.for_object(document), generated_version=version) self.submitted_excerpt_document = excerpt document_intid = self.copy_excerpt_to_proposal_dossier() self.register_excerpt(document_intid)
def setUp(self): super(TestMeetingView, self).setUp() self.admin_unit.public_url = 'http://nohost/plone' self.repo, self.repo_folder = create(Builder('repository_tree')) self.dossier = create(Builder('dossier') .within(self.repo_folder)) self.meeting_dossier = create(Builder('meeting_dossier') .titled(u'Meeting Dossier') .within(self.repo_folder)) self.attachement = create(Builder('document') .attach_file_containing(u"attachement", u"attachement.docx") .within(self.dossier)) container = create(Builder('committee_container')) self.committee = create(Builder('committee').within(container)) self.sablon_template = create( Builder('sablontemplate') .with_asset_file('excerpt_template.docx')) self.protocol = create(Builder('document') .titled(u'Protocol') .attach_file_containing(u"protocol", u"protocol.docx") .within(self.dossier)) self.excerpt = create(Builder('document') .titled(u'Excerpt') .attach_file_containing(u"excerpt", u"excerpt.docx") .within(self.dossier)) self.generated_excerpt = create(Builder('generated_excerpt') .for_document(self.excerpt)) self.hugo = create(Builder('member').having(firstname=u'h\xfcgo', lastname="Boss", email="*****@*****.**")) self.sile = create(Builder('member').having(firstname="Silvia", lastname="Pangani", email="*****@*****.**")) self.peter = create(Builder('member').having(firstname="Peter", lastname="Meter", email="*****@*****.**")) self.hans = create(Builder('member').having(firstname="Hans", lastname="Besen")) self.roland = create(Builder('member').having(firstname="Roland", lastname="Kuppler")) self.proposal_a = create(Builder('proposal') .titled(u'Proposal A') .within(self.dossier) .as_submitted() .having(committee=self.committee.load_model(), submitted_excerpt_document=self.generated_excerpt,) .relate_to(self.attachement)) self.proposal_b = create(Builder('proposal') .titled(u'Proposal B') .within(self.dossier) .as_submitted() .having(committee=self.committee.load_model())) self.generated_protocol = create(Builder('generated_protocol') .for_document(self.protocol)) # restore session by refreshing instance self.generated_excerpt = GeneratedExcerpt.get(self.generated_excerpt.document_id) self.meeting = create( Builder('meeting') .having(committee=self.committee.load_model(), start=self.localized_datetime(2013, 1, 1, 8, 30), end=self.localized_datetime(2013, 1, 1, 10, 30), location='There', presidency=self.hugo, participants=[self.peter, self.hans, self.roland], secretary=self.sile, protocol_document=self.generated_protocol, excerpt_documents=[self.generated_excerpt],) .scheduled_proposals([self.proposal_a, self.proposal_b]) .link_with(self.meeting_dossier)) # set correct public url, used for generated meeting urls get_current_admin_unit().public_url = self.portal.absolute_url() transaction.commit()
def setUp(self): super(TestMeetingView, self).setUp() self.admin_unit.public_url = 'http://nohost/plone' self.repo, self.repo_folder = create(Builder('repository_tree')) self.dossier = create(Builder('dossier').within(self.repo_folder)) self.meeting_dossier = create( Builder('meeting_dossier').titled(u'Meeting Dossier').within( self.repo_folder)) self.attachement = create( Builder('document').attach_file_containing( u"attachement", u"attachement.docx").within(self.dossier)) container = create(Builder('committee_container')) self.committee = create(Builder('committee').within(container)) self.sablon_template = create( Builder('sablontemplate').with_asset_file('excerpt_template.docx')) self.protocol = create( Builder('document').titled(u'Protocol').attach_file_containing( u"protocol", u"protocol.docx").within(self.dossier)) self.excerpt = create( Builder('document').titled(u'Excerpt').attach_file_containing( u"excerpt", u"excerpt.docx").within(self.dossier)) self.generated_excerpt = create( Builder('generated_excerpt').for_document(self.excerpt)) self.hugo = create( Builder('member').having(firstname=u'h\xfcgo', lastname="Boss", email="*****@*****.**")) self.sile = create( Builder('member').having(firstname="Silvia", lastname="Pangani", email="*****@*****.**")) self.peter = create( Builder('member').having(firstname="Peter", lastname="Meter", email="*****@*****.**")) self.hans = create( Builder('member').having(firstname="Hans", lastname="Besen")) self.roland = create( Builder('member').having(firstname="Roland", lastname="Kuppler")) self.proposal_a = create( Builder('proposal').titled(u'Proposal A').within( self.dossier).as_submitted().having( committee=self.committee.load_model(), submitted_excerpt_document=self.generated_excerpt, ).relate_to(self.attachement)) self.proposal_b = create( Builder('proposal').titled(u'Proposal B').within( self.dossier).as_submitted().having( committee=self.committee.load_model())) self.generated_protocol = create( Builder('generated_protocol').for_document(self.protocol)) # restore session by refreshing instance self.generated_excerpt = GeneratedExcerpt.get( self.generated_excerpt.document_id) self.meeting = create( Builder('meeting').having( committee=self.committee.load_model(), start=self.localized_datetime(2013, 1, 1, 8, 30), end=self.localized_datetime(2013, 1, 1, 10, 30), location='There', presidency=self.hugo, participants=[self.peter, self.hans, self.roland], secretary=self.sile, protocol_document=self.generated_protocol, excerpt_documents=[self.generated_excerpt], ).scheduled_proposals([self.proposal_a, self.proposal_b ]).link_with(self.meeting_dossier)) # set correct public url, used for generated meeting urls get_current_admin_unit().public_url = self.portal.absolute_url() transaction.commit()