コード例 #1
0
ファイル: tests.py プロジェクト: ivanfr90/microblog
    def test_follow_posts(self):
        # users creation
        u1 = User(username='******', email='*****@*****.**')
        u2 = User(username='******', email='*****@*****.**')
        u3 = User(username='******', email='*****@*****.**')
        u4 = User(username='******', email='*****@*****.**')
        db.session.add_all([u1, u2, u3, u4])

        # posts creation
        now = datetime.utcnow()  # to adds secconds to appreciate desc sort
        p1 = Post(body="Post from John",
                  author=u1,
                  timestamp=now + timedelta(seconds=1))
        p2 = Post(body="Post from Susan",
                  author=u2,
                  timestamp=now + timedelta(seconds=2))
        p3 = Post(body="Post from Mary",
                  author=u3,
                  timestamp=now + timedelta(seconds=3))
        p4 = Post(body="Post from David",
                  author=u4,
                  timestamp=now + timedelta(seconds=4))
        db.session.add_all([p1, p2, p3, p4])
        db.session.commit()

        # settup followers
        u1.follow(u2)
        u1.follow(u4)
        u2.follow(u3)
        u3.follow(u4)
        db.session.commit()

        # check the followed posts of each user
        f1 = u1.followed_posts().all()
        f2 = u2.followed_posts().all()
        f3 = u3.followed_posts().all()
        f4 = u4.followed_posts().all()
        # take in mind the desc sorting applied
        self.assertEqual(f1, [p4, p2, p1])
        self.assertEqual(f2, [p3, p2])
        self.assertEqual(f3, [p4, p3])
        self.assertEqual(f4, [p4])
コード例 #2
0
    def test_follow_posts(self):
        # create four users
        u1 = User(username='******', email='*****@*****.**')
        u2 = User(username='******', email='*****@*****.**')
        u3 = User(username='******', email='*****@*****.**')
        u4 = User(username='******', email='*****@*****.**')
        db.session.add_all([u1, u2, u3, u4])

        # create four posts
        now = datetime.utcnow()
        p1 = Post(body="post from john",
                  author=u1,
                  timestamp=now + timedelta(seconds=1))
        p2 = Post(body="post from susan",
                  author=u2,
                  timestamp=now + timedelta(seconds=4))
        p3 = Post(body="post from mary",
                  author=u3,
                  timestamp=now + timedelta(seconds=3))
        p4 = Post(body="post from david",
                  author=u4,
                  timestamp=now + timedelta(seconds=2))
        db.session.add_all([p1, p2, p3, p4])
        db.session.commit()

        # setup the followers
        u1.follow(u2)  # john follows susan
        u1.follow(u4)  # john follows david
        u2.follow(u3)  # susan follows mary
        u3.follow(u4)  # mary follows david
        db.session.commit()

        # check the followed posts of each user
        f1 = u1.followed_posts().all()
        f2 = u2.followed_posts().all()
        f3 = u3.followed_posts().all()
        f4 = u4.followed_posts().all()
        self.assertEqual(f1, [p2, p4, p1])
        self.assertEqual(f2, [p2, p3])
        self.assertEqual(f3, [p3, p4])
        self.assertEqual(f4, [p4])
コード例 #3
0
ファイル: tests.py プロジェクト: WJiHui/flask-blog
    def test_follow_post(self):
        u1 = User(nickname='john', email='*****@*****.**')
        u2 = User(nickname='susan', email='*****@*****.**')
        u3 = User(nickname='wjh', email='*****@*****.**')
        db.session.add(u1)
        db.session.add(u2)
        db.session.add(u3)
        import datetime
        nowtime = datetime.datetime.now().strftime("%Y-%m-%d %H:%M:%S")
        p1 = Post(body='post from john', author=u1, timestamp=nowtime)
        p2 = Post(body='post from susan', author=u2, timestamp=nowtime)
        p3 = Post(body='post from wjh', author=u3, timestamp=nowtime)
        db.session.add(p1)
        db.session.add(p2)
        db.session.add(p3)
        db.session.commit()

        f1 = u1.follow(u2)
        f2 = u1.follow(u3)
        f3 = u2.follow(u1)
        f4 = u2.follow(u3)
        f5 = u3.follow(u1)
        f6 = u3.follow(u2)

        db.session.add(f1)
        db.session.add(f2)
        db.session.add(f3)
        db.session.add(f4)
        db.session.add(f5)
        db.session.add(f6)
        db.session.commit()

        # print(u1.followers.count())
        # print(dir(u1.followed_users))
        # print(u1.followed_users.all())
        print(u1.followed_posts().all())