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)
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)
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
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
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))
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)
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)
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())