Пример #1
0
 def test_upload_and_delete_slideshow(self):
     api = slideshare.SlideshareAPI(API_KEY, SHARED_SECRET)
     url = 'https://github.com/cleder/slideshare/blob/master/slideshare/test1.odp?raw=true'
     ts = datetime.now().isoformat()
     sls = api.upload_slideshow(
         USERNAME,
         PASSWORD,
         slideshow_title='Python Slideshare API Test %s' % ts,
         upload_url=url,
         slideshow_description='Python API for slideshare reinvented',
         slideshow_tags='python')
     sl_id = sls['SlideShowUploaded']['SlideShowID']
     sls = api.delete_slideshow(USERNAME, PASSWORD, sl_id)
     self.assertEqual(sls['SlideShowDeleted']['SlideshowID'], sl_id)
     f = open('slideshare/test1.odp')
     ts = datetime.now().isoformat()
     sls = api.upload_slideshow(
         USERNAME,
         PASSWORD,
         'Python Slideshare API Test %s' % ts,
         slideshow_srcfile={
             'filename': 'yat%s.odf' % ts,
             'mimetype': 'application/vnd.oasis.opendocument.presentation',
             'filehandle': f,
         })
     sl_id = sls['SlideShowUploaded']['SlideShowID']
     sls = api.delete_slideshow(USERNAME, PASSWORD, sl_id)
     self.assertEqual(sls['SlideShowDeleted']['SlideshowID'], sl_id)
Пример #2
0
def get_slideshare_id(api_key, shared_secret, context):
    """From a link to a slideshare slideshow get the slideshareId
    and  annotate the object"""
    api = slideshare.SlideshareAPI(api_key, shared_secret)
    try:
        sls = api.get_slideshow(slideshow_url=context.getRemoteUrl())
    except slideshare.SlideShareServiceError, exc:
        context.setLayout(context.getDefaultLayout())
        return str(exc)
Пример #3
0
 def test_SlideShareServiceError(self):
     api = slideshare.SlideshareAPI(API_KEY, SHARED_SECRET)
     api.api_key = None
     sl_id = '21834196'
     try:
         api.get_slideshow(slideshow_id=sl_id)
         raise Exception
     except slideshare.SlideShareServiceError, exc:
         self.assertEqual(exc.errno, '1')
Пример #4
0
 def test_get_slideshow(self):
     api = slideshare.SlideshareAPI(API_KEY, SHARED_SECRET)
     #get slideshow by id
     sl_id = '21834196'
     sls = api.get_slideshow(slideshow_id=sl_id)
     self.assertEqual(sls['Slideshow']['ID'], sl_id)
     sls = api.get_slideshow(
         slideshow_url=
         "http://www.slideshare.net/slidesharepython/python-slideshare-api-test-20130524t162943687234"
     )
     self.assertEqual(sls['Slideshow']['ID'], sl_id)
Пример #5
0
 def test_edit_slideshow(self):
     # you will have to substitute sl_id
     # with a slideshow_id you are allowed to edit
     sl_id = '21834196'
     api = slideshare.SlideshareAPI(API_KEY, SHARED_SECRET)
     sls = api.edit_slideshow(
         USERNAME,
         PASSWORD,
         sl_id,
         slideshow_title="Python Slideshare API",
         slideshow_description='Python API for slideshare reinvented',
         slideshow_tags='python, plone, ',
     )
     self.assertEqual(sls['SlideShowEdited']['SlideShowID'], sl_id)
Пример #6
0
def post_to_slideshare(api_key, shared_secret, username, password, context):
    """ post a file to slideshare, annotate the object"""
    api = slideshare.SlideshareAPI(api_key, shared_secret)
    srcfile = dict(filehandle=context.getFile().getIterator(),
                   filename=context.getFilename(),
                   mimetype=context.getContentType())
    try:
        sls = api.upload_slideshow(username,
                                   password,
                                   slideshow_title=context.Title(),
                                   slideshow_srcfile=srcfile,
                                   slideshow_description=context.Description(),
                                   slideshow_tags=','.join(context.Subject()))
    except slideshare.SlideShareServiceError, exc:
        context.setLayout(context.getDefaultLayout())
        return str(exc)
Пример #7
0
 def actionSubmit(self, action, data):
     if self.settings.api_key and self.settings.shared_secret:
         api = slideshare.SlideshareAPI(self.settings.api_key,
             self.settings.shared_secret)
     else:
         msg = _(u"Slideshare API_KEY or SHARED_SECRET missing")
         IStatusMessage(self.request).addStatusMessage(msg, type='error')
         self.request.response.redirect(self.next_url)
         return
     msg = collective.slideshare.utils.get_slideshare_id(
         self.settings.api_key, self.settings.shared_secret,
         self.context)
     self.request.response.redirect(self.next_url)
     msgtype = 'info'
     if 'SlideShareServiceError' in msg:
         msgtype = 'error'
     IStatusMessage(self.request).addStatusMessage(msg, type=msgtype)
Пример #8
0
 def actionSubmit(self, action, data):
     url = self.context.absolute_url()
     if self.settings.api_key and self.settings.shared_secret:
         api = slideshare.SlideshareAPI(self.settings.api_key,
             self.settings.shared_secret)
     else:
         msg = _(u"Slideshare API_KEY or SHARED_SECRET missing")
         IStatusMessage(self.request).addStatusMessage(msg, type='error')
         self.request.response.redirect(self.next_url)
         return
     if self.settings.user_policy == "fixed":
         username = self.settings.username
         password = self.settings.password
     elif self.settings.user_policy == "user":
         username = data.get('username')
         password = data.get('password')
     elif self.settings.user_policy == "optional":
         username = data.get('username')
         password = data.get('password')
         if not(username and password):
             username = self.settings.username
             password = self.settings.password
     else:
         username = None
         password = None
     if not(username and password):
         msg = _(u"Slideshare USERNAME or PASSWORD missing")
         IStatusMessage(self.request).addStatusMessage(msg, type='error')
         return
     msg = collective.slideshare.utils.post_to_slideshare(
             self.settings.api_key, self.settings.shared_secret,
             username, password, self.context)
     self.request.response.redirect(self.next_url)
     msgtype = 'info'
     if 'SlideShareServiceError' in msg:
         msgtype = 'error'
     IStatusMessage(self.request).addStatusMessage(msg, type=msgtype)
Пример #9
0
 def test_get_user_tags(self):
     api = slideshare.SlideshareAPI(API_KEY, SHARED_SECRET)
     tags = api.get_user_tags(USERNAME, PASSWORD)
     self.assertTrue('Tags' in tags)
Пример #10
0
 def test_get_user_contacts(self):
     api = slideshare.SlideshareAPI(API_KEY, SHARED_SECRET)
     contacts = api.get_user_contacts(USERNAME)
     self.assertTrue('Contacts' in contacts)
Пример #11
0
 def test_get_user_favorites(self):
     api = slideshare.SlideshareAPI(API_KEY, SHARED_SECRET)
     favs = api.get_user_favorites(USERNAME)
     self.assertTrue('favorites' in favs)
Пример #12
0
 def test_get_user_groups(self):
     api = slideshare.SlideshareAPI(API_KEY, SHARED_SECRET)
     #XXX HTTPError: HTTP Error 500: Internal Server Error
     #groups = api.get_user_groups(USERNAME)
     #self.assertEqual(groups, '')
     pass
Пример #13
0
 def test_search_slideshows(self):
     api = slideshare.SlideshareAPI(API_KEY, SHARED_SECRET)
     sls = api.search_slideshows(q='python')
     self.assertEqual(sls['Slideshows']['Meta']['Query'], 'python')
     self.assertFalse(sls['Slideshows']['Meta']['TotalResults'] == '0')
Пример #14
0
 def test_get_slideshows_by_user(self):
     api = slideshare.SlideshareAPI(API_KEY, SHARED_SECRET)
     sls = api.get_slideshows_by_user(USERNAME)
     self.assertEqual(sls['User']['Name'], USERNAME)
Пример #15
0
 def test_get_slideshows_by_group(self):
     api = slideshare.SlideshareAPI(API_KEY, SHARED_SECRET)
     pass
Пример #16
0
 def test_get_slideshows_by_tag(self):
     api = slideshare.SlideshareAPI(API_KEY, SHARED_SECRET)
     sls = api.get_slideshows_by_tag('python')
     self.assertEqual(sls['Tag']['Name'], 'python')
     self.assertFalse(sls['Tag']['Count'] == '0')
Пример #17
0
 def test_get_user_campaign_leads(self):
     api = slideshare.SlideshareAPI(API_KEY, SHARED_SECRET)
     #untested only available in pro version
     pass
Пример #18
0
 def test_get_user_leads(self):
     api = slideshare.SlideshareAPI(API_KEY, SHARED_SECRET)
     lead = api.get_user_leads(USERNAME, PASSWORD)
     self.assertTrue('Leads' in lead)
Пример #19
0
 def test_get_user_campaigns(self):
     api = slideshare.SlideshareAPI(API_KEY, SHARED_SECRET)
     campaign = api.get_user_campaigns(USERNAME, PASSWORD)
     self.assertTrue('Campaigns' in campaign)
Пример #20
0
 def test_check_favorite(self):
     api = slideshare.SlideshareAPI(API_KEY, SHARED_SECRET)
     sl_id = '21834196'
     sls = api.check_favorite(USERNAME, PASSWORD, sl_id)
     self.assertEqual(sls['Slideshow']['SlideshowID'], sl_id)