Example #1
0
    def test_add_activity(self):
        user1 = backend.add_user('username1','photo_url','weibo_id1')
        user2 = backend.add_user('username2','photo_url','weibo_id2')
        post1 = backend.add_post('title1',user1['id'],'video_url',
                    pic_small='pic_small')
        post2 = backend.add_post('title2',user1['id'],'video_url',
                    pic_small='pic_small')

        ac1 = {
                'post_id':post1['id'],
                'from_id':user1['id'],
                'to_id':user2['id'],
                'atype':'like'
                }
        ac2 = {
                'post_id':post1['id'],
                'from_id':user1['id'],
                'to_id':user2['id'],
                'atype':'comment'
                }

        ret = backend.add_activity(ac1)
        assert ret['to_id'] == user2['id']
        ret = backend.add_activity(ac2)

        rets = backend.get_activity_by_user(user2['id'])
        assert len(rets) == 2
Example #2
0
    def test_get_latest_feed(self):
        user1 = backend.add_user('username01', 'photo_url01', 'weibo_id01')
        user2 = backend.add_user('username02', 'photo_url02', 'weibo_id02')
        user3 = backend.add_user('username03', 'photo_url03', 'weibo_id03')
        user4 = backend.add_user('username04', 'photo_url04', 'weibo_id04')

        post1 = backend.add_post('title01',
                                 user1['id'],
                                 'video_url01',
                                 pic_small='pic_small01')
        post2 = backend.add_post('title02',
                                 user2['id'],
                                 'video_url02',
                                 pic_small='pic_small')
        post3 = backend.add_post('title03',
                                 user3['id'],
                                 'video_url03',
                                 pic_small='pic_small03')
        post4 = backend.add_post('title04',
                                 user4['id'],
                                 'video_url04',
                                 pic_small='pic_small04')

        backend.follow_user(user4['id'], user1['id'])
        backend.follow_user(user4['id'], user2['id'])

        ret = backend.get_latest_feed(user4['id'], limit=10, offset=0)
        assert len(ret) == 3

        backend.set_post(post3['id'], {'recommended': True})

        ret = backend.get_latest_feed(user4['id'], limit=10, offset=0)
        assert len(ret) == 4
Example #3
0
    def test_feeds_view(self):
        user1 = backend.add_user('username01','photo_url01','weibo_id01')
        user2 = backend.add_user('username02','photo_url02','weibo_id02')
        user3 = backend.add_user('username03','photo_url03','weibo_id03') 
        user4 = backend.add_user('username04','photo_url04','weibo_id04')

        post1 = backend.add_post('title01',user1['id'],'video_url01',
                    pic_small='pic_small01')
        post2 = backend.add_post('title02',user2['id'],'video_url02',
                    pic_small='pic_small')
        post3 = backend.add_post('title03',user3['id'],'video_url03',
                    pic_small='pic_small03')
        post4 = backend.add_post('title04',user4['id'],'video_url04',
                    pic_small='pic_small04')

        backend.follow_user(user4['id'],user1['id'])
        backend.follow_user(user4['id'],user2['id'])

        headers = self.generate_header('weibo_id04')

        resp = self.client.get('/feeds/%d' % user4['id'],headers=headers)
        ret = json.loads(resp.data)
        assert len(ret['results']) == 3


        backend.set_post(post3['id'],{'recommended':True})

        resp = self.client.get('/feeds/%d'% user4['id'],headers=headers)
        ret = json.loads(resp.data)

        assert len(ret['results']) == 4
Example #4
0
    def test_is_following_user(self):
        user1 = backend.add_user('username01', 'photo_url01', 'weibo_id01')
        user2 = backend.add_user('username02', 'photo_url02', 'weibo_id02')

        backend.follow_user(user1['id'], user2['id'])
        ret = backend.is_following_user(user1['id'], user2['id'])
        assert ret == True
Example #5
0
    def test_is_following_user(self):
        user1 = backend.add_user('username01','photo_url01','weibo_id01')
        user2 = backend.add_user('username02','photo_url02','weibo_id02')

        backend.follow_user(user1['id'],user2['id'])
        ret = backend.is_following_user(user1['id'],user2['id'])
        assert ret == True
Example #6
0
    def test_get_latest_feed(self):
        user1 = backend.add_user('username01','photo_url01','weibo_id01')
        user2 = backend.add_user('username02','photo_url02','weibo_id02')
        user3 = backend.add_user('username03','photo_url03','weibo_id03') 
        user4 = backend.add_user('username04','photo_url04','weibo_id04')

        post1 = backend.add_post('title01',user1['id'],'video_url01',
                    pic_small='pic_small01')
        post2 = backend.add_post('title02',user2['id'],'video_url02',
                    pic_small='pic_small')
        post3 = backend.add_post('title03',user3['id'],'video_url03',
                    pic_small='pic_small03')
        post4 = backend.add_post('title04',user4['id'],'video_url04',
                    pic_small='pic_small04')

        backend.follow_user(user4['id'],user1['id'])
        backend.follow_user(user4['id'],user2['id'])
        

        ret = backend.get_latest_feed(user4['id'],limit=10,offset=0)
        assert len(ret) == 3

        backend.set_post(post3['id'],{'recommended':True})

        ret = backend.get_latest_feed(user4['id'],limit=10,offset=0)
        assert len(ret) == 4
Example #7
0
    def test_add_activity(self):
        user1 = backend.add_user('username1', 'photo_url', 'weibo_id1')
        user2 = backend.add_user('username2', 'photo_url', 'weibo_id2')
        post1 = backend.add_post('title1',
                                 user1['id'],
                                 'video_url',
                                 pic_small='pic_small')
        post2 = backend.add_post('title2',
                                 user1['id'],
                                 'video_url',
                                 pic_small='pic_small')

        ac1 = {
            'post_id': post1['id'],
            'from_id': user1['id'],
            'to_id': user2['id'],
            'atype': 'like'
        }
        ac2 = {
            'post_id': post1['id'],
            'from_id': user1['id'],
            'to_id': user2['id'],
            'atype': 'comment'
        }

        ret = backend.add_activity(ac1)
        assert ret['to_id'] == user2['id']
        ret = backend.add_activity(ac2)

        rets = backend.get_activity_by_user(user2['id'])
        assert len(rets) == 2
Example #8
0
    def test_get_user_by_uid(self):
        user1 = backend.add_user('username01', 'photo_url01', 'weibo_id01')
        user2 = backend.add_user('username02', 'photo_url02', 'weibo_id02')

        user = backend.get_user_by_uid(user1['uid'])
        assert user['username'] == user1['username']

        users = backend.get_user_by_uid([user1['uid'], user2['uid']])
        assert len(users) == 2
Example #9
0
    def test_get_user_by_uid(self):
        user1 = backend.add_user('username01','photo_url01','weibo_id01')
        user2 = backend.add_user('username02','photo_url02','weibo_id02')
        
        user = backend.get_user_by_uid(user1['uid'])
        assert user['username'] == user1['username']

        users = backend.get_user_by_uid([user1['uid'],user2['uid']])
        assert len(users) == 2
Example #10
0
    def test_user_activity_view(self):

        # get
        user1 = backend.add_user('username1','photo_url','weibo_id1')
        user2 = backend.add_user('username2','photo_url','weibo_id2')
        post1 = backend.add_post('title1',user1['id'],'video_url',
                    pic_small='pic_small')
        post2 = backend.add_post('title2',user1['id'],'video_url',
                    pic_small='pic_small')
        
        comment1 = backend.add_comment(post1['id'],'comment1',user1['id'])

        ac1 = {
                'post_id':post1['id'],
                'from_id':user1['id'],
                'to_id':user2['id'],
                'atype':'like'
                }
        ac2 = {
                'post_id':post1['id'],
                'from_id':user1['id'],
                'comment_id':comment1['id'],
                'to_id':user2['id'],
                'atype':'comment'
                }


        ret = backend.add_activity(ac1)
        ret = backend.add_activity(ac2)
        backend.new_install(user2['id'],'device_token')

        headers = self.generate_header('weibo_id2')
        resp = self.client.get('/user/%d/activity' % user2['id'],headers=headers)
        _data = json.loads(resp.data)
        assert resp.status_code == 200
        assert len(_data['results']) == 2

        redis.flushall()
        redis.hset('ACTIVITY::UPDATETIME::%(user_id)s' % {'user_id':user2['id']},
                                'last_update_time',int(time.time() - 3600 * 6))

        resp = self.client.get('/user/%d/activity/count' % user2['id'],
                headers=headers)
        _data = json.loads(resp.data)
        assert resp.status_code == 200
        assert _data['count'] == 2

        redis.hset('ACTIVITY::UPDATETIME::%(user_id)s' % {'user_id':user2['id']},
                                'last_update_time',int(time.time()) + 2)

        resp = self.client.get('/user/%d/activity/count' % user2['id'],
                headers=headers)
        _data = json.loads(resp.data)
        assert resp.status_code == 200
        assert _data['count'] == 0
Example #11
0
    def test_get_user_follower(self):
        user1 = backend.add_user('username01', 'photo_url01', 'weibo_id01')
        user2 = backend.add_user('username02', 'photo_url02', 'weibo_id02')
        user3 = backend.add_user('username03', 'photo_url03', 'weibo_id03')

        backend.follow_user(user2['id'], user1['id'])
        backend.follow_user(user3['id'], user1['id'])

        users = backend.get_user_follower(user1['id'])
        assert len(users) == 2

        count = backend.get_user_follower_count(user1['id'])
        assert count == 2
Example #12
0
    def test_get_user_follower(self):
        user1 = backend.add_user('username01','photo_url01','weibo_id01')
        user2 = backend.add_user('username02','photo_url02','weibo_id02')
        user3 = backend.add_user('username03','photo_url03','weibo_id03')

        backend.follow_user(user2['id'],user1['id'])
        backend.follow_user(user3['id'],user1['id'])

        users = backend.get_user_follower(user1['id'])
        assert len(users) == 2
        
        count = backend.get_user_follower_count(user1['id'])
        assert count == 2
Example #13
0
    def test_post_view(self):

        # post
        user1 = backend.add_user('username01','photo_url01','weibo_id01')
        headers = self.generate_header('weibo_id01')
        data = {
                'title':'title01',
                'author_id':user1['id'],
                'video_file':(StringIO('AAAA' * 10000),'hello.mp4'),
                'pic_file':(StringIO('AAAA' * 1000),'hello.png')
                }

        resp = self.client.post('/post',data=data,headers=headers)

        _data = json.loads(resp.data)
        assert resp.status_code == 200
        assert _data['title'] == 'title01'

        # get
        resp = self.client.get('/post/%d' % _data['id'],headers=headers)
        data_get = json.loads(resp.data)
        print resp.data
        assert data_get['title'] == 'title01'

        # put
        put_in = {'pic_small':'pic_small'}
        resp = self.client.put('/post/%d'%_data['id'],data=json.dumps(put_in),
                                headers=headers,content_type='application/json')
        print resp.data
        assert resp.status_code == 204
Example #14
0
    def test_post_view(self):

        # post
        user1 = backend.add_user('username01', 'photo_url01', 'weibo_id01')
        headers = self.generate_header('weibo_id01')
        data = {
            'title': 'title01',
            'author_id': user1['id'],
            'video_file': (StringIO('AAAA' * 10000), 'hello.mp4'),
            'pic_file': (StringIO('AAAA' * 1000), 'hello.png')
        }

        resp = self.client.post('/post', data=data, headers=headers)

        _data = json.loads(resp.data)
        assert resp.status_code == 200
        assert _data['title'] == 'title01'

        # get
        resp = self.client.get('/post/%d' % _data['id'], headers=headers)
        data_get = json.loads(resp.data)
        print resp.data
        assert data_get['title'] == 'title01'

        # put
        put_in = {'pic_small': 'pic_small'}
        resp = self.client.put('/post/%d' % _data['id'],
                               data=json.dumps(put_in),
                               headers=headers,
                               content_type='application/json')
        print resp.data
        assert resp.status_code == 204
Example #15
0
 def test_set_user(self):
     user = backend.add_user('username', 'photo_url', 'weibo_id')
     _user = backend.set_user(user['id'], {
         'username': '******',
         'photo_url': 'photo_url2'
     })
     assert _user['username'] == 'username2'
Example #16
0
    def test_tag_view(self):
        tag1 = Tag(name='tag1',show=True,pic_url='pic_url',
                recommended=True)
        tag2 = Tag(name='tag2',show=True,pic_url='pic_url',
                recommended=True)
        db.session.add(tag1)
        db.session.add(tag2)
        db.session.commit()

        user1 = backend.add_user('username01','photo_url01','weibo_id01')
        post1 = backend.add_post('post01',user1['id'],
                'video_url','pic_small1')
        post2 = backend.add_post('post02',user1['id'],
                'video_url','pic_small2')
        tagging1 = Tagging(taggable_type='post',taggable_id=post1['id'],tag_id=tag1.id)
        tagging2 = Tagging(taggable_type='post',taggable_id=post2['id'],tag_id=tag1.id)

        headers = self.generate_header('weibo_id01')
        # get
        resp = self.client.get('/tag/%d'% tag1.id,headers=headers)
        data_get = json.loads(resp.data)
        assert data_get['tag']['name'] == 'tag1'

        # get tags 
        resp = self.client.get('/tags',headers=headers)
        data_get = json.loads(resp.data)
        assert len(data_get['results']) == 2
Example #17
0
    def test_comment_view(self):

        # post
        user1 = backend.add_user('username01','photo_url01','weibo_id01')
        headers = self.generate_header('weibo_id01')
        post1 = backend.add_post('post01',user1['id'],
                        'video_url','pic_small1')

        data = {
                'author_id':user1['id'],
                'content':'comment01',
                'post_id':post1['id']
                }

        resp = self.client.post('/comment',data=json.dumps(data),headers=headers,
                            content_type='application/json')

        _data = json.loads(resp.data)
        assert resp.status_code == 200
        assert _data['content'] == 'comment01'
        
        # delete
        resp = self.client.delete('/comment/%d'%_data['id'],
                                headers=headers,content_type='application/json')
        print resp.data
        assert resp.status_code == 204
Example #18
0
    def test_get_post(self):
        user = backend.add_user('username', 'photo_url', 'weibo_id')
        post = Post(title='title', author_id=user['id'], pic_small='pic_small')
        db.session.add(post)
        db.session.commit()

        _post = backend.get_post(post.id)
        assert _post['title'] == 'title'
Example #19
0
    def test_get_post(self):
        user = backend.add_user('username','photo_url','weibo_id')
        post = Post(title='title',author_id=user['id'],pic_small='pic_small')
        db.session.add(post)
        db.session.commit()

        _post = backend.get_post(post.id)
        assert _post['title'] == 'title'
Example #20
0
    def test_add_post(self):
        user = backend.add_user('username','photo_url','weibo_id')
        post = backend.add_post('title',user['id'],'video_url',
                pic_small='pic_small')
        
        assert post['title'] == 'title'

        post = backend.set_post(post['id'],{'title':'title2'})
        assert post['title'] == 'title2'
Example #21
0
    def test_add_like(self):
        user1 = backend.add_user('username1','photo_url','weibo_id1')
        post1 = backend.add_post('title1',user1['id'],'video_url',
                    pic_small='pic_small')

        ret = backend.add_like(user1['id'],post1['id'])
        assert ret == 1

        ret = backend.del_like(user1['id'],post1['id'])
        assert ret == True
Example #22
0
    def test_get_user_liked_post(self):
        user1 = backend.add_user('username1','photo_url','weibo_id1')
        user2 = backend.add_user('username2','photo_url','weibo_id2')
        post1 = backend.add_post('title1',user1['id'],'video_url',
                    pic_small='pic_small')
        post2 = backend.add_post('title2',user1['id'],'video_url',
                    pic_small='pic_small')

        ula1 = UserLikeAsso(user_id=user2['id'],post_id=post1['id'])
        ula2 = UserLikeAsso(user_id=user2['id'],post_id=post2['id'])
        db.session.add(ula1)
        db.session.add(ula2)
        db.session.commit()

        posts = backend.get_user_liked_post(user2['id'])
        assert len(posts) == 2

        count = backend.get_user_liked_post_count(user2['id'])
        assert count == 2
Example #23
0
    def test_add_post(self):
        user = backend.add_user('username', 'photo_url', 'weibo_id')
        post = backend.add_post('title',
                                user['id'],
                                'video_url',
                                pic_small='pic_small')

        assert post['title'] == 'title'

        post = backend.set_post(post['id'], {'title': 'title2'})
        assert post['title'] == 'title2'
Example #24
0
    def test_comment(self):
        user1 = backend.add_user('username1','photo_url','weibo_id1')
        user2 = backend.add_user('username2','photo_url','weibo_id2')
        post1 = backend.add_post('title1',user1['id'],'video_url',
                    pic_small='pic_small')
        post2 = backend.add_post('title2',user1['id'],'video_url',
                    pic_small='pic_small')

        
        comment1 = backend.add_comment(post1['id'],'comment1',user2['id'])
        assert comment1['post_id'] == post1['id']

        comment2 = backend.add_comment(post1['id'],'comment2',user2['id'])
        
        comments = backend.get_post_comment(post1['id'])

        assert len(comments) == 2
        
        ret = backend.get_post_comment_count(post1['id'])
        assert ret == 2
Example #25
0
    def test_get_user_post(self):
        user = backend.add_user('username','photo_url','weibo_id')
        post1 = backend.add_post('title1',user['id'],'video_url',
                    pic_small='pic_small')
        post2 = backend.add_post('title2',user['id'],'video_url',
                    pic_small='pic_small')
        
        posts = backend.get_user_post(user['id'])
        assert len(posts) == 2

        count = backend.get_user_post_count(user['id'])
        assert count == 2
Example #26
0
    def test_add_like(self):
        user1 = backend.add_user('username1', 'photo_url', 'weibo_id1')
        post1 = backend.add_post('title1',
                                 user1['id'],
                                 'video_url',
                                 pic_small='pic_small')

        ret = backend.add_like(user1['id'], post1['id'])
        assert ret == 1

        ret = backend.del_like(user1['id'], post1['id'])
        assert ret == True
Example #27
0
    def test_is_like_post(self):
        user1 = backend.add_user('username1','photo_url','weibo_id1')
        post1 = backend.add_post('title1',user1['id'],'video_url',
                    pic_small='pic_small')
        post2 = backend.add_post('title2',user1['id'],'video_url',
                    pic_small='pic_small')

        backend.add_like(user1['id'],post1['id'])
        backend.add_like(user1['id'],post2['id'])

        ret = backend.is_like_post(user1['id'],[post1['id'],post2['id']])
        assert ret[post1['id']] == True
Example #28
0
    def test_new_install(self):
        user1 = backend.add_user('username1','photo_url','weibo_id1')
        device_token = '1234567890'
        install = backend.new_install(user1['id'],device_token)
        assert install['device_token'] == device_token

        install = backend.get_install_by_user(user1['id'])

        assert install['device_token'] == device_token

        install = backend.set_install(user1['id'],{'badge':20})
        print install
        assert install['badge'] == 20
Example #29
0
    def test_new_install(self):
        user1 = backend.add_user('username1', 'photo_url', 'weibo_id1')
        device_token = '1234567890'
        install = backend.new_install(user1['id'], device_token)
        assert install['device_token'] == device_token

        install = backend.get_install_by_user(user1['id'])

        assert install['device_token'] == device_token

        install = backend.set_install(user1['id'], {'badge': 20})
        print install
        assert install['badge'] == 20
Example #30
0
    def test_feeds_view(self):
        user1 = backend.add_user('username01', 'photo_url01', 'weibo_id01')
        user2 = backend.add_user('username02', 'photo_url02', 'weibo_id02')
        user3 = backend.add_user('username03', 'photo_url03', 'weibo_id03')
        user4 = backend.add_user('username04', 'photo_url04', 'weibo_id04')

        post1 = backend.add_post('title01',
                                 user1['id'],
                                 'video_url01',
                                 pic_small='pic_small01')
        post2 = backend.add_post('title02',
                                 user2['id'],
                                 'video_url02',
                                 pic_small='pic_small')
        post3 = backend.add_post('title03',
                                 user3['id'],
                                 'video_url03',
                                 pic_small='pic_small03')
        post4 = backend.add_post('title04',
                                 user4['id'],
                                 'video_url04',
                                 pic_small='pic_small04')

        backend.follow_user(user4['id'], user1['id'])
        backend.follow_user(user4['id'], user2['id'])

        headers = self.generate_header('weibo_id04')

        resp = self.client.get('/feeds/%d' % user4['id'], headers=headers)
        ret = json.loads(resp.data)
        assert len(ret['results']) == 3

        backend.set_post(post3['id'], {'recommended': True})

        resp = self.client.get('/feeds/%d' % user4['id'], headers=headers)
        ret = json.loads(resp.data)

        assert len(ret['results']) == 4
Example #31
0
    def test_user_posts(self):
        user1 = backend.add_user('username01','photo_url01','weibo_id01')
        post1 = backend.add_post('post01',user1['id'],
                            'video_url','pic_small1')
        post2 = backend.add_post('post02',user1['id'],
                            'video_url','pic_small2')
        post3 = backend.add_post('post03',user1['id'],
                            'video_url','pic_small3')

        headers = self.generate_header('weibo_id01')

        resp = self.client.get('/posts/user/%d'%user1['id'],headers=headers)
        data_get = json.loads(resp.data)
        assert len(data_get['posts']) == 3
Example #32
0
    def test_post_comment_view(self):

        user1 = backend.add_user('username01','photo_url01','weibo_id01')
        post1 = backend.add_post('post01',user1['id'],
                        'video_url','pic_small1')
        comment1 = backend.add_comment(post1['id'],'comment1',user1['id'])
        comment2 = backend.add_comment(post1['id'],'comment2',user1['id'])
        comment3 = backend.add_comment(post1['id'],'comment3',user1['id'])

        headers = self.generate_header('weibo_id01')

        resp = self.client.get('/post/%d/comment' % post1['id'],headers=headers)
        data_get = json.loads(resp.data)
        assert len(data_get['comments']) == 3
Example #33
0
    def test_get_user_liked_post(self):
        user1 = backend.add_user('username1', 'photo_url', 'weibo_id1')
        user2 = backend.add_user('username2', 'photo_url', 'weibo_id2')
        post1 = backend.add_post('title1',
                                 user1['id'],
                                 'video_url',
                                 pic_small='pic_small')
        post2 = backend.add_post('title2',
                                 user1['id'],
                                 'video_url',
                                 pic_small='pic_small')

        ula1 = UserLikeAsso(user_id=user2['id'], post_id=post1['id'])
        ula2 = UserLikeAsso(user_id=user2['id'], post_id=post2['id'])
        db.session.add(ula1)
        db.session.add(ula2)
        db.session.commit()

        posts = backend.get_user_liked_post(user2['id'])
        assert len(posts) == 2

        count = backend.get_user_liked_post_count(user2['id'])
        assert count == 2
Example #34
0
    def test_user_posts(self):
        user1 = backend.add_user('username01', 'photo_url01', 'weibo_id01')
        post1 = backend.add_post('post01', user1['id'], 'video_url',
                                 'pic_small1')
        post2 = backend.add_post('post02', user1['id'], 'video_url',
                                 'pic_small2')
        post3 = backend.add_post('post03', user1['id'], 'video_url',
                                 'pic_small3')

        headers = self.generate_header('weibo_id01')

        resp = self.client.get('/posts/user/%d' % user1['id'], headers=headers)
        data_get = json.loads(resp.data)
        assert len(data_get['posts']) == 3
Example #35
0
    def test_comment(self):
        user1 = backend.add_user('username1', 'photo_url', 'weibo_id1')
        user2 = backend.add_user('username2', 'photo_url', 'weibo_id2')
        post1 = backend.add_post('title1',
                                 user1['id'],
                                 'video_url',
                                 pic_small='pic_small')
        post2 = backend.add_post('title2',
                                 user1['id'],
                                 'video_url',
                                 pic_small='pic_small')

        comment1 = backend.add_comment(post1['id'], 'comment1', user2['id'])
        assert comment1['post_id'] == post1['id']

        comment2 = backend.add_comment(post1['id'], 'comment2', user2['id'])

        comments = backend.get_post_comment(post1['id'])

        assert len(comments) == 2

        ret = backend.get_post_comment_count(post1['id'])
        assert ret == 2
Example #36
0
    def test_is_like_post(self):
        user1 = backend.add_user('username1', 'photo_url', 'weibo_id1')
        post1 = backend.add_post('title1',
                                 user1['id'],
                                 'video_url',
                                 pic_small='pic_small')
        post2 = backend.add_post('title2',
                                 user1['id'],
                                 'video_url',
                                 pic_small='pic_small')

        backend.add_like(user1['id'], post1['id'])
        backend.add_like(user1['id'], post2['id'])

        ret = backend.is_like_post(user1['id'], [post1['id'], post2['id']])
        assert ret[post1['id']] == True
Example #37
0
    def test_get_user_post(self):
        user = backend.add_user('username', 'photo_url', 'weibo_id')
        post1 = backend.add_post('title1',
                                 user['id'],
                                 'video_url',
                                 pic_small='pic_small')
        post2 = backend.add_post('title2',
                                 user['id'],
                                 'video_url',
                                 pic_small='pic_small')

        posts = backend.get_user_post(user['id'])
        assert len(posts) == 2

        count = backend.get_user_post_count(user['id'])
        assert count == 2
Example #38
0
    def test_tag(self):

        tag1 = Tag(name='tag1', show=True, pic_url='pic_url', recommended=True)
        tag2 = Tag(name='tag2', show=True, pic_url='pic_url', recommended=True)
        db.session.add(tag1)
        db.session.add(tag2)
        db.session.commit()

        tags = backend.get_all_tags()
        assert len(tags) == 2

        tags = backend.get_recommend_tags()
        assert len(tags) == 2

        tag = backend.get_tag(tag1.id)

        assert tag['name'] == 'tag1'

        user = backend.add_user('username', 'photo_url', 'weibo_id')
        post1 = backend.add_post('title1',
                                 user['id'],
                                 'video_url',
                                 pic_small='pic_small')
        post2 = backend.add_post('title2',
                                 user['id'],
                                 'video_url',
                                 pic_small='pic_small')

        tagging1 = Tagging(taggable_type='post',
                           taggable_id=post1['id'],
                           tag_id=tag1.id)
        tagging2 = Tagging(taggable_type='post',
                           taggable_id=post2['id'],
                           tag_id=tag1.id)

        db.session.add(tagging1)
        db.session.add(tagging2)
        db.session.commit()

        posts = backend.get_tag_post(tag1.id)
        assert len(posts) == 2

        post_count = backend.get_tag_post_count(tag1.id)
        assert post_count == 2
Example #39
0
    def test_tag(self):

        tag1 = Tag(name='tag1',show=True,pic_url='pic_url',
                    recommended=True)
        tag2 = Tag(name='tag2',show=True,pic_url='pic_url',
                    recommended=True)
        db.session.add(tag1)
        db.session.add(tag2)
        db.session.commit()

        tags = backend.get_all_tags()
        assert len(tags) == 2

        tags = backend.get_recommend_tags()
        assert len(tags) == 2

        tag = backend.get_tag(tag1.id)

        assert tag['name'] == 'tag1'
        
        user = backend.add_user('username','photo_url','weibo_id')
        post1 = backend.add_post('title1',user['id'],'video_url',
                    pic_small='pic_small')
        post2 = backend.add_post('title2',user['id'],'video_url',
                    pic_small='pic_small')

        tagging1 = Tagging(taggable_type='post',taggable_id=post1['id'],
                tag_id=tag1.id)
        tagging2 = Tagging(taggable_type='post',taggable_id=post2['id'],
                tag_id=tag1.id)
        
        db.session.add(tagging1)
        db.session.add(tagging2)
        db.session.commit()

        posts = backend.get_tag_post(tag1.id)
        assert len(posts) == 2

        post_count = backend.get_tag_post_count(tag1.id)
        assert post_count == 2
Example #40
0
    def test_install(self):
        user1 = backend.add_user('username01','photo_url01','weibo_id01')
        device_token = 'device_token'
        
        headers = self.generate_header('weibo_id01')
        
        data = {
                'device_type':'ios',
                'device_token':device_token,
                'version':'1.1.10',
                'user_id':user1['id']
                }

        resp = self.client.post('/install',data=json.dumps(data),
                                headers=headers,content_type='application/json')

        _data = json.loads(resp.data)
        install_id = _data['install_id']
        
        install = Install.query.filter(Install.user_id == user1['id']).first()
        assert install is not None
        assert install.device_token.encode('utf-8') == device_token
Example #41
0
    def test_post_like(self):
        user1 = backend.add_user('username01', 'photo_url01', 'weibo_id01')
        post1 = backend.add_post('post01', user1['id'], 'video_url',
                                 'pic_small1')

        headers = self.generate_header('weibo_id01')

        _data = {'user_id': user1['id'], 'post_id': post1['id']}
        resp = self.client.post('/post/like',
                                data=json.dumps(_data),
                                headers=headers,
                                content_type='application/json')

        data_get = json.loads(resp.data)
        assert data_get['like_count'] == 1

        resp = self.client.post('/post/unlike',
                                data=json.dumps(_data),
                                headers=headers,
                                content_type='application/json')

        data_get = json.loads(resp.data)
        assert data_get['like_count'] == 0
Example #42
0
    def test_post_like(self):
        user1 = backend.add_user('username01','photo_url01','weibo_id01')
        post1 = backend.add_post('post01',user1['id'],
                                'video_url','pic_small1')

        headers = self.generate_header('weibo_id01')

        _data = {
                'user_id':user1['id'],
                'post_id':post1['id']
                }
        resp = self.client.post('/post/like',data=json.dumps(_data),
                headers=headers,content_type='application/json')

        data_get = json.loads(resp.data)
        assert data_get['like_count'] == 1


        resp = self.client.post('/post/unlike',data=json.dumps(_data),
                headers=headers,content_type='application/json')

        data_get = json.loads(resp.data)
        assert data_get['like_count'] == 0
Example #43
0
    def test_user_liked_posts(self):
        user1 = backend.add_user('username01','photo_url01','weibo_id01')
        post1 = backend.add_post('post01',user1['id'],
                                'video_url','pic_small1')
        post2 = backend.add_post('post02',user1['id'],
                                'video_url','pic_small2')
        post3 = backend.add_post('post03',user1['id'],
                                'video_url','pic_small3')

        headers = self.generate_header('weibo_id01')

        ula1 = UserLikeAsso(user_id=user1['id'],post_id=post1['id'])
        ula2 = UserLikeAsso(user_id=user1['id'],post_id=post2['id'])
        ula3 = UserLikeAsso(user_id=user1['id'],post_id=post3['id'])

        db.session.add(ula1)
        db.session.add(ula2)
        db.session.add(ula3)
        db.session.commit()

        resp = self.client.get('/posts/user/%d/liked'%user1['id'],headers=headers)
        data_get = json.loads(resp.data)
        assert len(data_get['posts']) == 3
Example #44
0
    def test_user_liked_posts(self):
        user1 = backend.add_user('username01', 'photo_url01', 'weibo_id01')
        post1 = backend.add_post('post01', user1['id'], 'video_url',
                                 'pic_small1')
        post2 = backend.add_post('post02', user1['id'], 'video_url',
                                 'pic_small2')
        post3 = backend.add_post('post03', user1['id'], 'video_url',
                                 'pic_small3')

        headers = self.generate_header('weibo_id01')

        ula1 = UserLikeAsso(user_id=user1['id'], post_id=post1['id'])
        ula2 = UserLikeAsso(user_id=user1['id'], post_id=post2['id'])
        ula3 = UserLikeAsso(user_id=user1['id'], post_id=post3['id'])

        db.session.add(ula1)
        db.session.add(ula2)
        db.session.add(ula3)
        db.session.commit()

        resp = self.client.get('/posts/user/%d/liked' % user1['id'],
                               headers=headers)
        data_get = json.loads(resp.data)
        assert len(data_get['posts']) == 3
Example #45
0
 def test_set_user(self):
     user = backend.add_user('username','photo_url','weibo_id')
     _user = backend.set_user(user['id'],{'username':'******',
                                         'photo_url':'photo_url2'})
     assert _user['username'] == 'username2'
Example #46
0
 def test_add_user(self):
     user = backend.add_user('username','photo_url','weibo_id')
     assert user['username'] == 'username'
Example #47
0
                        })
        except BackendError,ex:
            if ex.message == 'EmptyError':
                user = {}
            else:
                return jsonify(error='服务器开小差了')
        else:
            return jsonify(**user)

        _data = self.get_weibo_info(data['uid'],data['access_token'])
        data.update(_data)
        try:
            user = backend.add_user(
                        data['username'].encode('utf-8'),
                        data['photo_url'].encode('utf-8'),
                        data['uid'].encode('utf-8'),
                        data['signature'].encode('utf-8'),
                        data['access_token'].encode('utf-8')
                    )
        except BackendError,ex:
            return jsonify(error='add new user error')

        print 'add user',user
        user.update({'new':True})
        return jsonify(**user)

    def put(self,user_id):
        data = UpdateUserSchema().deserialize(request.json)
        try:
            user = backend.set_user(user_id,data)
        except BackendError,ex:
Example #48
0
 def test_add_user(self):
     user = backend.add_user('username', 'photo_url', 'weibo_id')
     assert user['username'] == 'username'
Example #49
0
    def test_user_activity_view(self):

        # get
        user1 = backend.add_user('username1', 'photo_url', 'weibo_id1')
        user2 = backend.add_user('username2', 'photo_url', 'weibo_id2')
        post1 = backend.add_post('title1',
                                 user1['id'],
                                 'video_url',
                                 pic_small='pic_small')
        post2 = backend.add_post('title2',
                                 user1['id'],
                                 'video_url',
                                 pic_small='pic_small')

        comment1 = backend.add_comment(post1['id'], 'comment1', user1['id'])

        ac1 = {
            'post_id': post1['id'],
            'from_id': user1['id'],
            'to_id': user2['id'],
            'atype': 'like'
        }
        ac2 = {
            'post_id': post1['id'],
            'from_id': user1['id'],
            'comment_id': comment1['id'],
            'to_id': user2['id'],
            'atype': 'comment'
        }

        ret = backend.add_activity(ac1)
        ret = backend.add_activity(ac2)
        backend.new_install(user2['id'], 'device_token')

        headers = self.generate_header('weibo_id2')
        resp = self.client.get('/user/%d/activity' % user2['id'],
                               headers=headers)
        _data = json.loads(resp.data)
        assert resp.status_code == 200
        assert len(_data['results']) == 2

        redis.flushall()
        redis.hset(
            'ACTIVITY::UPDATETIME::%(user_id)s' % {'user_id': user2['id']},
            'last_update_time', int(time.time() - 3600 * 6))

        resp = self.client.get('/user/%d/activity/count' % user2['id'],
                               headers=headers)
        _data = json.loads(resp.data)
        assert resp.status_code == 200
        assert _data['count'] == 2

        redis.hset(
            'ACTIVITY::UPDATETIME::%(user_id)s' % {'user_id': user2['id']},
            'last_update_time',
            int(time.time()) + 2)

        resp = self.client.get('/user/%d/activity/count' % user2['id'],
                               headers=headers)
        _data = json.loads(resp.data)
        assert resp.status_code == 200
        assert _data['count'] == 0
Example #50
0
                    'access_token': data['access_token'].encode('utf-8')
                })
        except BackendError, ex:
            if ex.message == 'EmptyError':
                user = {}
            else:
                return jsonify(error='服务器开小差了')
        else:
            return jsonify(**user)

        _data = self.get_weibo_info(data['uid'], data['access_token'])
        data.update(_data)
        try:
            user = backend.add_user(data['username'].encode('utf-8'),
                                    data['photo_url'].encode('utf-8'),
                                    data['uid'].encode('utf-8'),
                                    data['signature'].encode('utf-8'),
                                    data['access_token'].encode('utf-8'))
        except BackendError, ex:
            return jsonify(error='add new user error')

        print 'add user', user
        user.update({'new': True})
        return jsonify(**user)

    def put(self, user_id):
        data = UpdateUserSchema().deserialize(request.json)
        try:
            user = backend.set_user(user_id, data)
        except BackendError, ex:
            raise ex