def test_like_comment(self):
     self._insert_comments(10)
     coms = comments.for_screening(self.video, self.user)
     forlike = coms[5]
     comments.like(forlike, self.user)
     coms = comments.for_screening(self.video, self.user)
     liked = coms[5]
     comments.unlike(forlike, self.user)
     coms = comments.for_screening(self.video, self.user)
     unliked = coms[5]
     notliked = coms[6]
     self.assertTrue(liked.liked)
     self.assertFalse(unliked.liked)
     self.assertFalse(notliked.liked)
 def test_many_comments(self):
     self._insert_comments(100)
     coms = comments.for_screening(self.video, self.user)
     comlen = ((self.video.duration - 3) / 5) + 2
     first = coms[0]
     last = coms[-1]
     self.assertEqual(len(coms), comlen)
     self.assertEqual(first.author.sysid, 'system')
     self.assertTrue(first.text.startswith('Feel free to comment'))
     self.assertEqual(last.author.sysid, self.user.sysid)
 def test_comments_order(self):
     self._insert_comments(10)
     coms = comments.for_screening(self.video, self.user)
     prevStart = 0
     prevTime = 0
     for com in coms:
         self.assertGreaterEqual(com.start, prevStart)
         prevStart = com.start
         if com.author.sysid != 'system':
             self.assertGreaterEqual(com.time, prevTime)
             prevTime = com.time
 def test_few_comments(self):
     self._insert_comments(10)
     coms = comments.for_screening(self.video, self.user)
     comlen = 10 + 2
     first = coms[0]
     last = coms[-1]
     self.assertEqual(len(coms), comlen)
     self.assertEqual(first.author.sysid, 'system')
     self.assertTrue(first.text.startswith('Feel free to comment'))
     self.assertEqual(last.author.sysid, 'system')
     self.assertTrue(last.text.startswith('There is no more comments'))
def show(vidid):
    g.menu['select_top_menu']['home'] = True
    user = users.current()
    render_data = {}
    if vidid == 'random':
        render_data['mode'] = 'normal'
        video = videos.random()
        watchtran.begin(user, video)
    else:
        render_data['mode'] = 'specific'
        video = videos.find(vidid)
        # TODO: remove line below
        watchtran.begin(user, video)
        if video is None:
            abort(404)
    render_data['video'] = video
    render_data['user_message_size'] = USER_MESSAGE_SIZE
    scomments = comments.for_screening(video, user)
    render_data['comments'] = scomments
    return render_template('player/screening.html', **render_data)
 def test_no_comment(self):
     coms = comments.for_screening(self.video, self.user)
     first = coms[0]
     self.assertEqual(len(coms), 1)
     self.assertEqual(first.author.sysid, 'system')
     self.assertTrue(first.text.startswith('Feel free to comment'))