Example #1
0
 def test_playlists_should_be_resolvable(self):
     from zeit.cms.testcontenttype.testcontenttype import ExampleContentType
     from zeit.cms.interfaces import ICMSContent
     from zeit.cms.repository.folder import Folder
     self.repository['video'] = Folder()
     self.repository['video']['playlist'] = Folder()
     self.repository['video']['playlist']['1234'] = ExampleContentType()
     expected_unique_id = 'http://xml.zeit.de/video/playlist/1234'
     result = ICMSContent('http://video.zeit.de/playlist/1234')
     self.assertEqual(expected_unique_id, result.uniqueId)
Example #2
0
 def test_existing_folder(self):
     from zeit.cms.repository.folder import Folder
     self.repository['wirtschaft'] = Folder()
     self.repository['wirtschaft']['2009-02'] = Folder()
     ANY = None
     adder = zeit.cms.content.add.ContentAdder(
         ANY, ressort='wirtschaft', year='2009', month='2')
     folder = zope.component.getMultiAdapter(
         (ExampleContentType(), adder),
         zeit.cms.content.interfaces.IAddLocation)
     self.assertEqual(self.repository['wirtschaft']['2009-02'], folder)
Example #3
0
 def setUp(self):
     super(TestVolume, self).setUp()
     volume = Volume()
     volume.year = 2015
     volume.volume = 1
     volume.product = zeit.cms.content.sources.Product(u'ZEI')
     self.repository['2015'] = Folder()
     self.repository['2015']['01'] = Folder()
     # Add a cover image-group
     self.repository['imagegroup'] = create_image_group()
     volume.set_cover('ipad', 'ZEI', self.repository['imagegroup'])
     self.repository['2015']['01']['ausgabe'] = volume
Example #4
0
 def create_volume(self, year, name):
     volume = Volume()
     volume.year = year
     volume.volume = name
     volume.product = zeit.cms.content.sources.Product(u'ZEI')
     volume.date_digital_published = datetime(year,
                                              name,
                                              1,
                                              tzinfo=pytz.UTC)
     year = str(year)
     name = '%02d' % name
     self.repository[year] = Folder()
     self.repository[year][name] = Folder()
     self.repository[year][name]['ausgabe'] = volume
Example #5
0
 def test_adding_content_to_folder_marks_it_with_general_interface(self):
     self.repository['example']['test'] = Folder()
     obj = self.repository['example']['test']
     self.assertTrue(
         zeit.cms.section.testing.IExampleContent.providedBy(obj))
     self.assertFalse(
         zeit.cms.section.testing.IExampleTestcontent.providedBy(obj))
Example #6
0
    def test_reference_honors_ICommonMetadata_xml_format(self):
        from zeit.content.volume.volume import Volume
        from zeit.cms.repository.folder import Folder
        volume = Volume()
        volume.year = 2015
        volume.volume = 1
        volume.teaserText = 'original'
        volume.product = zeit.cms.content.sources.Product(u'ZEI')
        self.repository['2015'] = Folder()
        self.repository['2015']['01'] = Folder()
        self.repository['2015']['01']['ausgabe'] = volume
        self.repository['2015']['01'][
            'index'] = zeit.content.cp.centerpage.CenterPage()

        reference = zope.component.getAdapter(
            volume, zeit.cms.content.interfaces.IXMLReference, name='related')
        self.assertEqual(volume.teaserText, reference.description)
Example #7
0
 def test_list_relevant_ressort_folders_excludes_leserbriefe_and_images(
         self):
     toc = Toc(mock.Mock(), mock.Mock())
     toc_connector = zope.component.getUtility(
         zeit.content.volume.interfaces.ITocConnector)
     zope.component.getGlobalSiteManager().registerUtility(
         toc_connector, zeit.connector.interfaces.IConnector)
     folders = ['images', 'leserbriefe', 'politik']
     with zeit.cms.testing.site(self.getRootFolder()):
         self.repository['ZEI'] = Folder()
         self.repository['ZEI']['2015'] = Folder()
         self.repository['ZEI']['2015']['01'] = Folder()
         for foldername in folders:
             self.repository['ZEI']['2015']['01'][foldername] = Folder()
         relevant_ressorts = toc.list_relevant_ressort_folders(
             'http://xml.zeit.de'
             '/ZEI/2015/01')
     foldernames = [folder.__name__ for folder in relevant_ressorts]
     self.assertIn('politik', foldernames)
Example #8
0
    def test_add_location_can_be_overriden_with_adapter(self):
        from zeit.cms.repository.folder import Folder
        self.repository['foo'] = Folder()

        zope.component.getSiteManager().registerAdapter(
            lambda *args: self.repository['foo'],
            (zeit.cms.testcontenttype.interfaces.IExampleContentType,
             zeit.cms.content.interfaces.IContentAdder),
            zeit.cms.content.interfaces.IAddLocation)
        adder = zeit.cms.content.add.ContentAdder(
            self.request,
            type_=zeit.cms.testcontenttype.interfaces.IExampleContentType)
        self.assertEqual(
            'http://127.0.0.1/repository/foo/'
            '@@zeit.cms.testcontenttype.Add?', adder())