예제 #1
0
    def test_invalid_confirmation_token(self):
        """ Tests that confirmation tokens fail, when
        the wrong user is given another user's token """
        u1 = User(username='******', password='******')
        u2 = User(username='******', password='******')
        db.session.add(u1, u2)
        db.session.commit()

        u1_token = u1.generate_confirmation_token()
        u2_token = u2.generate_confirmation_token()
        self.assertFalse(u2.confirm(u1_token))
        self.assertFalse(u1.confirm(u2_token))
        self.assertFalse(u1.confirm(None))
예제 #2
0
 def test_user_is_confirmed(self):
     u = User(password='******')
     db.session.add(u)
     db.session.commit()
     token = u.generate_confirmation_token()
     self.assertTrue(u.confirm(token))
     self.assertTrue(u.confirmed)
예제 #3
0
 def test_expired_confirmation_token(self):
     u = User(password='******')
     db.session.add(u)
     db.session.commit()
     token = u.generate_confirmation_token(1)
     time.sleep(2)
     self.assertFalse(u.confirm(token))
예제 #4
0
 def test_invalid_confirmation_token(self):
     u1 = User(password='******')
     u2 = User(password='******')
     db.session.add(u1)
     db.session.add(u2)
     db.session.commit()
     token = u1.generate_confirmation_token()
     self.assertFalse(u2.confirm(token))
예제 #5
0
 def test_valid_confirmation_token(self):
     """ Tests whether confirmation sent to newly
     registered user is valid 
     
     This test should pass, because it tests the token
     against the user itself (actually it checks that the
     id is the the same one as the user's id.) """
     u = User(username='******', password='******')
     db.session.add(u)
     db.session.commit()
     token = u.generate_confirmation_token()
     self.assertTrue(u.confirm(token))
예제 #6
0
 def test_confirmation_tokens(self):
     """Test User.generate_confirmation_token and User.confirm"""
     steve = TestModels.create_steve()
     alan = User(email='*****@*****.**',
                 first_name='Alan',
                 last_name='Smith',
                 password='******')
     db.session.add(steve)
     db.session.add(alan)
     db.session.commit()  # generate ids for steve and alan
     token = steve.generate_confirmation_token()
     self.assertTrue(steve.confirm(token))
     self.assertFalse(alan.confirm(token))
     self.assertTrue(steve.is_confirmed)
     self.assertFalse(alan.is_confirmed)
예제 #7
0
    def test_expired_confirmation_token(self):
        """ Tests that confirmation tokens fail,
        when out of date. """
        u1 = User(username='******', password='******')
        db.session.add(u1)
        db.session.commit()

        # Creates a confirmation token with expiration
        # time of 1 second.
        token = u1.generate_confirmation_token(1)

        # Wait for 2 seconds to ensure token will be
        # expired
        time.sleep(2)
        self.assertFalse(u1.confirm(token))