示例#1
0
    def test_banner_set(self):
        """controllers.admin.Controller.banner_set is working properly"""
        languageid, tadm = self._fill_db()
        media = Media(u'image', u'test image', u'/test.png', tadm, u'xx',
                                                                u'random text')
        DBSession.add(media)
        link = Link(u'test link', u'http://example.com', tadm, u'xx',
                                                                u'random text')
        DBSession.add(link)
        DBSession.flush()
        mediaid = media.id
        linkid = link.id
        transaction.commit()
        
        environ = {'REMOTE_USER': '******'}
        response = self.app.post('/admin/banner_set',
                                            dict(mediaid=mediaid,
                                                 linkid=linkid,
                                                ),
                                            extra_environ=environ, status=302)
        #redirected = response.follow(extra_environ=environ, status=200)

        bc = DBSession.query(BannerContent).first()
        eq_(bc.media_id, mediaid)
        eq_(bc.link_id, linkid)
示例#2
0
 def _fill_db(self):
     language = Language(u'xx', u'test language')
     DBSession.add(language)
     DBSession.flush()
     languageid = language.id
     transaction.commit()
     return languageid.encode()
示例#3
0
 def _fill_db(self):
     language = Language(u'xx', u'test language')
     DBSession.add(language)
     DBSession.flush()
     languageid = language.id
     transaction.commit()
     return languageid.encode()
示例#4
0
    def test_article(self):
        """controllers.admin.Controller.article is working properly"""
        languageid, tadm = self._fill_db()
        cat = Category(u'test_category', u'xx')
        DBSession.add(cat)
        article = Article(u'A Test Article!', cat, u'xx', tadm, u'random text')
        DBSession.add(article)
        DBSession.flush()
        categoryid = cat.id
        articleid = article.id
        transaction.commit()

        environ = {'REMOTE_USER': '******'}
        response = self.app.get('/admin/article/', extra_environ=environ,
                                                                    status=200)

        tr = response.html.table.find('tr', articleid)
        # Date
        eq_(str(tr('td')[1]), '<td>test_category</td>')
        eq_(str(tr('td')[2]), '<td>%s</td>' % articleid)
        eq_(str(tr('td')[3]), '<td>A Test Article!</td>')
        eq_(str(tr('td')[4]), '<td></td>')
        eq_(str(tr('td')[5]), '<td>%s</td>' % languageid)
        # Status
        actions = tr('td')[7]
        eq_(str(actions('a')[0]['class']), 'icon edit')
        eq_(str(actions('a')[1]['class']), 'icon delete overlay')
        eq_(str(actions('a')[2]['class']), 'icon publish')
示例#5
0
    def test_comment(self):
        """controllers.admin.Controller.comment is working properly"""
        languageid, tadm = self._fill_db()
        comment = Comment(u'anonymous', u'*****@*****.**', u'test comment')
        DBSession.add(comment)
        DBSession.flush()
        commentid = comment.id
        transaction.commit()
        
        environ = {'REMOTE_USER': '******'}
        response = self.app.get('/admin/comment/', extra_environ=environ,
                                                                    status=200)

        tr = response.html.table('tr')[1]
        # Date
        eq_(str(tr('td')[1]), '<td>%s</td>' % commentid)
        eq_(str(tr('td')[2]), '<td></td>')
        eq_(str(tr('td')[3]), '<td>anonymous</td>')
        eq_(str(tr('td')[4]), '<td>[email protected]</td>')
        eq_(str(tr('td')[5]), '<td>test comment</td>')
        # Status
        actions = tr('td')[7]
        eq_(str(actions('a')[0]['class']), 'icon edit overlay')
        eq_(str(actions('a')[1]['class']), 'icon delete overlay')
        eq_(str(actions('a')[2]['class']), 'icon approve')
        eq_(str(actions('a')[3]['class']), 'icon spam')
示例#6
0
 def _fill_db(self):
     tadm = DBSession.query(User).filter_by(user_name=u'test_admin').one()
     language = Language(u'xx', u'test language')
     DBSession.add(language)
     DBSession.flush()
     languageid = language.id
     return languageid, tadm
示例#7
0
 def do_get_dependencies(self):
     try:
         self.language = content.Language(id=u'xx', name=u'test_lang')
         DBSession.add(self.language)
         DBSession.flush()
         return dict(lang=self.language.id, )
     except:
         DBSession.rollback()
         raise
示例#8
0
 def do_get_dependencies(self):
     try:
         self.language = content.Language(id=u'xx', name=u'test_lang')
         DBSession.add(self.language)
         DBSession.flush()
         return dict(lang=self.language.id,
                    )
     except:
         DBSession.rollback()
         raise
示例#9
0
文件: page.py 项目: lento/tagger
    def post(self, articleid, name, languageid, text=None):
        """create a new Page"""
        user = tmpl_context.user
        article = DBSession.query(Article).get(articleid.decode())
        page = Page(name, languageid, user, text)
        article.pages.append(page)
        DBSession.flush()

        flash('%s %s' % (_('Created Page:'), page.string_id), 'ok')
        return dict(redirect_to=url('/article/%s/edit' % article.id))
示例#10
0
 def _fill_db(self):
     language = Language(u'xx', u'test_langugage')
     DBSession.add(language)
     cat = Category(u'test category', u'xx', u'a test category')
     DBSession.add(cat)
     DBSession.flush()
     languageid = language.id
     categoryid = cat.id
     transaction.commit()
     return languageid, categoryid.encode()
示例#11
0
文件: test_tag.py 项目: lento/tagger
 def _fill_db(self):
     language = Language(u'xx', u'test_langugage')
     DBSession.add(language)
     tag = Tag(u'test tag', u'xx')
     DBSession.add(tag)
     DBSession.flush()
     languageid = language.id
     tagid = tag.id
     transaction.commit()
     return languageid, tagid.encode()
示例#12
0
 def _fill_db(self):
     language = Language(u'xx', u'test_langugage')
     DBSession.add(language)
     cat = Category(u'test category', u'xx', u'a test category')
     DBSession.add(cat)
     DBSession.flush()
     languageid = language.id
     categoryid = cat.id
     transaction.commit()
     return languageid, categoryid.encode()
示例#13
0
    def post(self, articleid, name, languageid, text=None):
        """create a new Page"""
        user = tmpl_context.user
        article = DBSession.query(Article).get(articleid.decode())
        page = Page(name, languageid, user, text)
        article.pages.append(page)
        DBSession.flush()

        flash('%s %s' % (_('Created Page:'), page.string_id), 'ok')
        return dict(redirect_to=url('/article/%s/edit' % article.id))
示例#14
0
 def _fill_db(self):
     language = Language(u'xx', u'test_langugage')
     DBSession.add(language)
     tag = Tag(u'test tag', u'xx')
     DBSession.add(tag)
     DBSession.flush()
     languageid = language.id
     tagid = tag.id
     transaction.commit()
     return languageid, tagid.encode()
示例#15
0
 def setUp(self):
     """Prepare model test fixture."""
     try:
         new_attrs = {}
         new_attrs.update(self.attrs)
         new_attrs.update(self.do_get_dependencies())
         self.obj = self.klass(**new_attrs)
         DBSession.add(self.obj)
         DBSession.flush()
         return self.obj
     except:
         DBSession.rollback()
         raise
示例#16
0
 def _fill_db(self):
     tadm = DBSession.query(User).filter_by(user_name=u'test_admin').one()
     language = Language(u'xx', u'test_langugage')
     DBSession.add(language)
     cat = Category(u'test_category', u'xx')
     DBSession.add(cat)
     article = Article(u'A Test Article!', cat, u'xx', tadm, u'random text')
     DBSession.add(article)
     DBSession.flush()
     categoryid = cat.id
     articleid = article.id
     languageid = language.id
     transaction.commit()
     return languageid, categoryid, articleid
示例#17
0
 def _fill_db(self):
     tadm = DBSession.query(User).filter_by(user_name=u'test_admin').one()
     language = Language(u'xx', u'test_langugage')
     DBSession.add(language)
     link = Link(u'test link', u'http://example.com', tadm, u'xx',
                                                             u'random text')
     DBSession.add(link)
     comment = Comment(u'anonymous', u'*****@*****.**', u'test comment')
     DBSession.add(comment)
     link.comments.append(comment)
     DBSession.flush()
     associableid = link.associable.id
     commentid = comment.id
     transaction.commit()
     return associableid, commentid
示例#18
0
 def _fill_db(self):
     tadm = DBSession.query(User).filter_by(user_name=u'test_admin').one()
     language = Language(u'xx', u'test_langugage')
     DBSession.add(language)
     tag = Tag(u'test_tag', u'xx')
     DBSession.add(tag)
     media = Media(u'image', u'test image', u'/test.png', tadm, u'xx',
                                                             u'random text')
     media.tags.append(tag)
     DBSession.add(media)
     DBSession.flush()
     languageid = language.id
     mediaid = media.id
     transaction.commit()
     return languageid, mediaid.encode()
示例#19
0
 def _fill_db(self):
     tadm = DBSession.query(User).filter_by(user_name=u'test_admin').one()
     language = Language(u'xx', u'test_langugage')
     DBSession.add(language)
     tag = Tag(u'test_tag', u'xx')
     DBSession.add(tag)
     link = Link(u'test link', u'http://example.com', tadm, u'xx',
                 u'random text')
     link.tags.append(tag)
     DBSession.add(link)
     DBSession.flush()
     languageid = language.id
     linkid = link.id
     transaction.commit()
     return languageid, linkid.encode()
示例#20
0
 def _fill_db(self):
     tadm = DBSession.query(User).filter_by(user_name=u'test_admin').one()
     language = Language(u'xx', u'test_langugage')
     DBSession.add(language)
     tag = Tag(u'test_tag', u'xx')
     DBSession.add(tag)
     media = Media(u'image', u'test image', u'/test.png', tadm, u'xx',
                   u'random text')
     media.tags.append(tag)
     DBSession.add(media)
     DBSession.flush()
     languageid = language.id
     mediaid = media.id
     transaction.commit()
     return languageid, mediaid.encode()
示例#21
0
文件: test_link.py 项目: lento/tagger
 def _fill_db(self):
     tadm = DBSession.query(User).filter_by(user_name=u'test_admin').one()
     language = Language(u'xx', u'test_langugage')
     DBSession.add(language)
     tag = Tag(u'test_tag', u'xx')
     DBSession.add(tag)
     link = Link(u'test link', u'http://example.com', tadm, u'xx',
                                                             u'random text')
     link.tags.append(tag)
     DBSession.add(link)
     DBSession.flush()
     languageid = language.id
     linkid = link.id
     transaction.commit()
     return languageid, linkid.encode()
示例#22
0
 def do_get_dependencies(self):
     try:
         self.user = auth.User(user_name=u'test_user')
         DBSession.add(self.user)
         self.language = content.Language(id=u'xx', name=u'test_lang')
         DBSession.add(self.language)
         self.category = content.Category(u'test category', u'xx')
         DBSession.add(self.category)
         DBSession.flush()
         return dict(title=u"A test article!",
                     category=self.category,
                     user=self.user,
                     #language=self.language,
                     lang=self.language.id,
                     text = u"random text"
                    )
     except:
         DBSession.rollback()
         raise
示例#23
0
 def do_get_dependencies(self):
     try:
         self.user = auth.User(user_name=u'test_user')
         DBSession.add(self.user)
         self.language = content.Language(id=u'xx', name=u'test_lang')
         DBSession.add(self.language)
         self.category = content.Category(u'test category', u'xx')
         DBSession.add(self.category)
         DBSession.flush()
         return dict(
             title=u"A test article!",
             category=self.category,
             user=self.user,
             #language=self.language,
             lang=self.language.id,
             text=u"random text")
     except:
         DBSession.rollback()
         raise
示例#24
0
 def do_get_dependencies(self):
     try:
         user = auth.User(user_name=u'test_user')
         DBSession.add(user)
         language = content.Language(id=u'xx', name=u'test_lang')
         DBSession.add(language)
         self.media = content.Media(u'image', u'test_image', u'test.png',
                                    user, u'xx')
         DBSession.add(self.media)
         self.link = content.Link(u'test_link', u'http://example.com', user,
                                  u'xx')
         DBSession.add(self.link)
         DBSession.flush()
         return dict(
             media=self.media,
             link=self.link,
         )
     except:
         DBSession.rollback()
         raise
示例#25
0
    def test_tag(self):
        """controllers.admin.Controller.tag is working properly"""
        languageid, tadm = self._fill_db()
        tag = Tag(u'test tag', u'xx')
        DBSession.add(tag)
        DBSession.flush()
        tagid = tag.id
        transaction.commit()
        
        environ = {'REMOTE_USER': '******'}
        response = self.app.get('/admin/tag/', extra_environ=environ,
                                                                    status=200)

        tr = response.html.table('tr')[1]
        eq_(str(tr('td')[0]), '<td>%s</td>' % tagid)
        eq_(str(tr('td')[1]), '<td>test tag</td>')
        eq_(str(tr('td')[2]), '<td>%s</td>' % languageid)
        actions = tr('td')[3]
        eq_(str(actions('a')[0]['class']), 'icon edit overlay')
        eq_(str(actions('a')[1]['class']), 'icon delete overlay')
示例#26
0
    def test_category(self):
        """controllers.admin.Controller.category is working properly"""
        languageid, tadm = self._fill_db()
        category = Category(u'test category', u'xx', u'a test category')
        DBSession.add(category)
        DBSession.flush()
        categoryid = category.id
        transaction.commit()

        environ = {'REMOTE_USER': '******'}
        response = self.app.get('/admin/category/', extra_environ=environ,
                                                                    status=200)
        
        tr = response.html.table.find('tr', categoryid)
        eq_(str(tr('td')[0]), '<td>%s</td>' % categoryid)
        eq_(str(tr('td')[1]), '<td>test category</td>')
        eq_(str(tr('td')[2]), '<td>a test category</td>')
        eq_(str(tr('td')[3]), '<td>%s</td>' % languageid)
        actions = tr('td')[4]
        eq_(str(actions('a')[0]['class']), 'icon edit overlay')
        eq_(str(actions('a')[1]['class']), 'icon delete overlay')
示例#27
0
    def test_link(self):
        """controllers.admin.Controller.link is working properly"""
        languageid, tadm = self._fill_db()
        link = Link(u'test link', u'http://example.com', tadm, u'xx',
                                                                u'random text')
        DBSession.add(link)
        DBSession.flush()
        linkid = link.id
        transaction.commit()
        
        environ = {'REMOTE_USER': '******'}
        response = self.app.get('/admin/link/', extra_environ=environ,
                                                                    status=200)

        tr = response.html.table('tr')[1]
        eq_(str(tr('td')[0]), '<td>%s</td>' % linkid)
        eq_(str(tr('td')[1]), '<td>test link</td>')
        eq_(str(tr('td')[2]), '<td>http://example.com</td>')
        eq_(str(tr('td')[3]), '<td></td>')
        eq_(str(tr('td')[4]), '<td>%s</td>' % languageid)
        actions = tr('td')[5]
        eq_(str(actions('a')[0]['class']), 'icon edit overlay')
        eq_(str(actions('a')[1]['class']), 'icon delete overlay')
示例#28
0
    def test_media(self):
        """controllers.admin.Controller.media is working properly"""
        languageid, tadm = self._fill_db()
        media = Media(u'image', u'test image', u'/test.png', tadm, u'xx',
                                                                u'random text')
        DBSession.add(media)
        DBSession.flush()
        mediaid = media.id
        transaction.commit()
        
        environ = {'REMOTE_USER': '******'}
        response = self.app.get('/admin/media/', extra_environ=environ,
                                                                    status=200)

        tr = response.html.table('tr')[1]
        eq_(str(tr('td')[0]), '<td>%s</td>' % mediaid)
        eq_(str(tr('td')[1]), '<td>image</td>')
        eq_(str(tr('td')[2]), '<td>test image</td>')
        eq_(str(tr('td')[3]), '<td>/test.png</td>')
        eq_(str(tr('td')[4]), '<td></td>')
        eq_(str(tr('td')[5]), '<td>%s</td>' % languageid)
        actions = tr('td')[6]
        eq_(str(actions('a')[0]['class']), 'icon edit overlay')
        eq_(str(actions('a')[1]['class']), 'icon delete overlay')
示例#29
0
 def test_is_taggable(self):
     """model.content.Media objects are taggable"""
     tag = content.Tag(u'test_tag', self.language.id)
     self.obj.tags.append(tag)
     DBSession.flush()
     eq_(self.obj.tags[0], tag)
示例#30
0
 def test_is_taggable(self):
     """model.content.Media objects are taggable"""
     tag = content.Tag(u'test_tag', self.language.id)
     self.obj.tags.append(tag)
     DBSession.flush()
     eq_(self.obj.tags[0], tag)