Example #1
0
 def test_logout_when_loggedin(self):
     with self.app.test_client() as c, authenticated_user(c, user=self.factory.user):
         rv = c.get("/default/")
         self.assertTrue(current_user.is_authenticated)
         rv = c.get("/default/logout")
         self.assertEqual(rv.status_code, 302)
         self.assertFalse(current_user.is_authenticated)
Example #2
0
 def test_user_already_loggedin(self):
     with authenticated_user(
             self.client), patch('redash.handlers.authentication.login_user'
                                 ) as login_user_mock:
         rv = self.client.get('/default/login')
         self.assertEquals(rv.status_code, 302)
         self.assertFalse(login_user_mock.called)
Example #3
0
 def test_logout_when_loggedin(self):
     with self.app.test_client() as c, authenticated_user(c, user=self.factory.user):
         rv = c.get('/default/')
         self.assertTrue(current_user.is_authenticated)
         rv = c.get('/default/logout')
         self.assertEquals(rv.status_code, 302)
         self.assertFalse(current_user.is_authenticated)
Example #4
0
    def test_sync(self):
        with authenticated_user(self.client) as user:
            rv = self.client.get('/default/')
            timestamp = dt_from_timestamp(redis_connection.hget(LAST_ACTIVE_KEY, user.id))
            sync_last_active_at()

            user_reloaded = User.query.filter(User.id==user.id).first()
            self.assertIn('active_at', user_reloaded.details)
            self.assertEqual(user_reloaded.active_at, timestamp)
Example #5
0
    def test_userdetail_db_default_save(self):
        with authenticated_user(self.client) as user:
            user.details['test'] = 1
            db.session.commit()

            user_reloaded = User.query.filter_by(id=user.id).first()
            self.assertEqual(user.details['test'], 1)
            self.assertEqual(
                user_reloaded,
                User.query.filter(
                    User.details['test'].astext.cast(db.Integer) == 1).first())
Example #6
0
    def test_sync(self):
        with authenticated_user(self.client) as user:
            user_detail = models.UserDetail.update(user_id=user.id)
            self.assertEqual(user.details, {})

            self.assertEqual(len(list(models.UserDetail.all())), 1)
            models.UserDetail.sync()
            self.assertEqual(len(list(models.UserDetail.all())), 0)

            user_reloaded = models.User.query.filter_by(id=user.id).first()
            self.assertIn('active_at', user_reloaded.details)
            self.assertEqual(user_reloaded.active_at, user_detail.updated_at)
Example #7
0
    def test_userdetail_db_default_save(self):
        with authenticated_user(self.client) as user:
            user.details['test'] = 1
            db.session.commit()

            user_reloaded = User.query.filter_by(id=user.id).first()
            self.assertEqual(user.details['test'], 1)
            self.assertEqual(
                user_reloaded,
                User.query.filter(
                    User.details['test'].astext.cast(db.Integer) == 1
                ).first()
            )
Example #8
0
 def test_userdetail_db_default(self):
     with authenticated_user(self.client) as user:
         self.assertEqual(user.details, {})
         self.assertIsNone(user.active_at)
Example #9
0
 def test_user_already_loggedin(self):
     with authenticated_user(self.client), patch('redash.handlers.authentication.login_user') as login_user_mock:
         rv = self.client.get('/default/login')
         self.assertEquals(rv.status_code, 302)
         self.assertFalse(login_user_mock.called)