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())
Example #2
0
    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()