def test_users_strid(self):
        u2 = models.User(loginname='bono', passwordhash='1234')
        models.User(loginname='test5', passwordhash='1234').save()

        u2.save()

        self.assertEqual(models.by_id(models.User, [str(u2.id)]), [u2])
    def test_users_one_many_exist(self):
        models.User(loginname='test', passwordhash='1234').save()
        models.User(loginname='test2', passwordhash='1234').save()
        u = models.User(loginname='test3', passwordhash='1234')
        models.User(loginname='test4', passwordhash='1234').save()
        models.User(loginname='test5', passwordhash='1234').save()
        u.save()

        self.assertEqual(models.by_id(models.User, [u.id]), [u])
    def test_admin_post_only_must_be_logged_in_to_get(self):
        route = '/tests/admin_only_post_all_get'

        @streetsign_server.app.route(route, methods=['GET','POST'])
        @admin_only('POST')
        @registered_users_only('GET')
        def admin_only_post_all_get():
            return jsonify({'test':'success'})

        # without logging in:

        self.validate(route, code=403)
        self.validate(route, req='POST', code=403)

        # create a user:

        u = models.User(loginname='test', emailaddress='*****@*****.**', is_admin=False)
        u.set_password('123')
        u.save()

        # log in:

        a = self.login('test', '123')

        self.validate(route, lang='json')
        self.validate(route, req='POST', code=403)

        # now upgrade to admin level:

        u.is_admin = True
        u.save()

        self.validate(route, lang='json')
        self.validate(route, req='POST', lang='json')
    def test_new_only_admins_get_only(self):

        @streetsign_server.app.route('/tests/admin_only_get')
        @admin_only('GET')
        def admin_only_get():
            return jsonify({'test':'success'})

        # without logging in:

        self.validate('/tests/admin_only_get', code=403)

        # create a user:

        u = models.User(loginname='test', emailaddress='*****@*****.**', is_admin=False)
        u.set_password('123')
        u.save()

        # log in:

        a = self.login('test', '123')

        # should still fail:

        self.validate('/tests/admin_only_get', code=403)

        # now upgrade to admin level:

        u.is_admin = True
        u.save()

        self.validate('/tests/admin_only_get', lang='json')
    def test_users_some_invalid_ids(self):
        models.User(loginname='test', passwordhash='1234').save()
        models.User(loginname='test2', passwordhash='1234').save()
        u = models.User(loginname='test3', passwordhash='1234')
        u2 = models.User(loginname='bono', passwordhash='1234')
        models.User(loginname='test5', passwordhash='1234').save()

        u.save()
        u2.save()

        with self.assertRaises(models.User.DoesNotExist):
            models.User.get(id=42)

        with self.assertRaises(models.User.DoesNotExist):
            models.User.get(id=314)

        self.assertEqual(models.by_id(models.User, [42, u.id, 314]), [u])
Ejemplo n.º 6
0
    def setUp(self):
        super(TestLogin, self).setUp()

        self.user = models.User(loginname='test',
                                emailaddress='*****@*****.**',
                                is_admin=False)
        self.user.set_password('123')
        self.user.save()
    def test_user_info_not_logged_in(self):
        ''' user info should be private! '''

        self.validate('/users/0', code=403)

        u = models.User(loginname='test', emailaddress='*****@*****.**')
        u.set_password('123')
        u.save()

        self.validate('/users/' + str(u.id), code=403)
    def test_logged_in_valid(self):
        u = models.User(loginname='test', emailaddress='*****@*****.**')
        u.set_password('123')
        u.save()

        self.login('test', '123')

        with self.ctx():
            self.validate('/screens/')
            self.validate('/screens-edit/0', follow_redirects=True)
            self.validate('/user_files/')
            self.validate('/user_files/thing.jpg')
            self.validate('/users_and_groups')
            self.validate('/users/' + str(u.id))
            self.validate('/group/0', follow_redirects=True)
            self.validate('/aliases', lang='json')
            self.validate('/posts/')
            self.validate('/feeds/')
    def test_users_one(self):
        u = models.User(loginname='test', passwordhash='1234')
        u.save()

        self.assertEqual(models.by_id(models.User, [u.id]), [u])
Ejemplo n.º 10
0
    def test_users_none_but_some_exist(self):
        models.User(loginname='test', passwordhash='1234').save()
        models.User(loginname='test2', passwordhash='1234').save()

        self.assertEqual(models.by_id(models.User, []), [])