def test_users_and_communities(self):
     u = User('ben', 'Password1')
     c1 = Community('community1', None, u, None, None)
     c2 = Community('community2', 'Password123', u, None, None)
     db.session.add_all([u, c1, c2])
     db.session.commit()
     c1.join(u)
     self.assertFalse(c1.is_moderator(u))
     c1.assign_moderator(u)
     self.assertEqual(u"%s" % u.id, u.get_id())
     self.assertEqual(u, c1.founder)
     self.assertEqual(u, c2.founder)
     self.assertFalse(u.password == 'Password1')
     self.assertTrue(u in c1.users.all())
     self.assertTrue(c1.is_joined(u))
     self.assertTrue(c1.is_moderator(u))
     c1.remove_moderator(u)
     self.assertFalse(c1.is_moderator(u))
     c1.assign_moderator(u)
     c1.leave(u)
     self.assertFalse(c2.password == 'Password123')
     self.assertFalse(c1.is_joined(u))
     self.assertFalse(c1.is_moderator(u))
     self.assertFalse(c1.private)
     self.assertTrue(c2.private)
 def test_render_all_posts(self):
     user1 = User('user1', 'pw')
     user2 = User('user2', 'pw')
     c1 = Community('c1', None, founder=user1, FAQ=None, description=None)
     c2 = Community('c2', None, founder=user1, FAQ=None, description=None)
     db.session.add_all([user1, user2, c1, c2])
     db.session.commit()
     post1 = Posts('T1', 'Body', author=user1, community=c1)
     post2 = Posts('T2', 'Body', author=user2, community=c1)
     post3 = Posts('T3', 'Body', author=user1, community=c2)
     post4 = Posts('T4', 'Body', author=user2, community=c2)
     db.session.add_all([post1, post2, post3, post4])
     c1.join(user1)
     c2.join(user1)
     self.assertEqual(user1.render_all_community_posts().all(),
     [post4, post3, post2, post1])