示例#1
0
    def test_follows(self):
        u1 = User('test1')
        u1.email = '*****@*****.**'
        u1.password = '******'
        u2 = User('test2')
        u2.email = '*****@*****.**'
        u2.password = '******'
        db.session.add(u1)
        db.session.add(u2)
        db.session.commit()
        self.assertFalse(u1.is_following(u2))
        self.assertFalse(u1.is_followed_by(u2))

        timestamp_before = datetime.datetime.utcnow()
        u1.follow(u2)
        db.session.add(u1)
        db.session.commit()
        timestamp_after = datetime.datetime.utcnow()
        self.assertTrue(u1.is_following(u2))
        self.assertFalse(u1.is_followed_by(u2))
        self.assertTrue(u2.is_followed_by(u1))
        self.assertTrue(u1.followings.count() == 1)
        self.assertTrue(u2.followers.count() == 1)
        f = u1.followings.all()[-1]
        self.assertTrue(f.following == u2)
        self.assertTrue(timestamp_before <= f.timestamp <= timestamp_after)
        f = u2.followers.all()[-1]
        self.assertTrue(f.follower == u1)

        u1.unfollow(u2)
        db.session.add(u1)
        db.session.commit()
        self.assertTrue(u1.followings.count() == 0)
        self.assertTrue(u2.followers.count() == 0)
        self.assertTrue(Follow.query.count() == 0)

        u2.follow(u1)
        db.session.add(u1)
        db.session.add(u2)
        db.session.commit()
        db.session.delete(u2)
        db.session.commit()
        self.assertTrue(Follow.query.count() == 0)
示例#2
0
    def test_follow(self):
        u1 = User(username='******', email='*****@*****.**')
        u2 = User(username='******', email='*****@*****.**')
        db.session.add(u1)
        db.session.add(u2)
        db.session.commit()
        self.assertEqual(u1.followed.all(), [])
        self.assertEqual(u1.followers.all(), [])

        u1.follow(u2)
        db.session.commit()
        self.assertTrue(u1.is_following(u2))
        self.assertEqual(u1.followed.count(), 1)
        self.assertEqual(u1.followed.first().username, 'susan')
        self.assertEqual(u2.followers.count(), 1)
        self.assertEqual(u2.followers.first().username, 'john')

        u1.unfollow(u2)
        db.session.commit()
        self.assertFalse(u1.is_following(u2))
        self.assertEqual(u1.followed.count(), 0)
        self.assertEqual(u2.followers.count(), 0)
示例#3
0
    def test_follow(self):
        mohamed = User(username='******', email='*****@*****.**')
        wamda = User(username='******', email='*****@*****.**')
        db.session.add(mohamed)
        db.session.add(wamda)
        db.session.commit()
        self.assertEqual(mohamed.followed.all(), [])
        self.assertEqual(mohamed.followers.all(), [])

        mohamed.follow(wamda)
        db.session.commit()
        self.assertTrue(mohamed.is_following(wamda))
        self.assertEqual(mohamed.followed.count(), 1)
        self.assertEqual(mohamed.followed.first().username, 'wamda')
        self.assertEqual(wamda.followers.count(), 1)
        self.assertEqual(wamda.followers.first().username, 'mohamed')

        mohamed.unfollow(wamda)
        db.session.commit()
        self.assertFalse(mohamed.is_following(wamda))
        self.assertEqual(mohamed.followed.count(), 0)
        self.assertEqual(wamda.followers.count(), 0)