mirror of
https://github.com/aljazceru/CTFd.git
synced 2025-12-17 22:14:25 +01:00
109 lines
3.4 KiB
Python
109 lines
3.4 KiB
Python
#!/usr/bin/env python
|
|
# -*- coding: utf-8 -*-
|
|
from tests.helpers import (create_ctfd,
|
|
destroy_ctfd,
|
|
register_user,
|
|
login_as_user)
|
|
|
|
|
|
def test_user_get_private_solves():
|
|
"""Can a registered user load /api/v1/users/me/solves"""
|
|
app = create_ctfd()
|
|
with app.app_context():
|
|
register_user(app)
|
|
client = login_as_user(app)
|
|
r = client.get('/api/v1/users/me/solves')
|
|
assert r.status_code == 200
|
|
destroy_ctfd(app)
|
|
|
|
|
|
def test_user_get_public_solves():
|
|
"""Can a registered user load /api/v1/users/1/solves"""
|
|
app = create_ctfd()
|
|
with app.app_context():
|
|
register_user(app)
|
|
client = login_as_user(app)
|
|
r = client.get('/api/v1/users/2/solves')
|
|
assert r.status_code == 200
|
|
destroy_ctfd(app)
|
|
|
|
|
|
def test_user_get_another_public_solves():
|
|
"""Can a registered user load public solves page of another user"""
|
|
app = create_ctfd()
|
|
with app.app_context():
|
|
register_user(app, name='user1', email='user1@ctfd.io') # ID 2
|
|
register_user(app, name='user2', email='user2@ctfd.io') # ID 3
|
|
client = login_as_user(app, name='user2')
|
|
r = client.get('/api/v1/users/2/solves')
|
|
assert r.status_code == 200
|
|
destroy_ctfd(app)
|
|
|
|
|
|
def test_user_get_private_fails():
|
|
"""Can a registered user load /api/v1/users/me/fails"""
|
|
app = create_ctfd()
|
|
with app.app_context():
|
|
register_user(app)
|
|
client = login_as_user(app)
|
|
r = client.get('/api/v1/users/me/fails')
|
|
assert r.status_code == 200
|
|
destroy_ctfd(app)
|
|
|
|
|
|
def test_user_get_public_fails():
|
|
"""Can a registered user load /api/v1/users/2/fails"""
|
|
app = create_ctfd()
|
|
with app.app_context():
|
|
register_user(app)
|
|
client = login_as_user(app)
|
|
r = client.get('/api/v1/users/2/fails')
|
|
assert r.status_code == 200
|
|
destroy_ctfd(app)
|
|
|
|
|
|
def test_user_get_another_public_fails():
|
|
"""Can a registered user load public fails page of another user"""
|
|
app = create_ctfd()
|
|
with app.app_context():
|
|
register_user(app, name='user1', email='user1@ctfd.io') # ID 2
|
|
register_user(app, name='user2', email='user2@ctfd.io') # ID 3
|
|
client = login_as_user(app, name="user2")
|
|
r = client.get('/api/v1/users/2/fails')
|
|
assert r.status_code == 200
|
|
destroy_ctfd(app)
|
|
|
|
|
|
def test_user_get_public_team_page():
|
|
"""Can a registered user load their public profile (/profile)"""
|
|
app = create_ctfd()
|
|
with app.app_context():
|
|
register_user(app)
|
|
client = login_as_user(app)
|
|
r = client.get('/profile')
|
|
assert r.status_code == 200
|
|
destroy_ctfd(app)
|
|
|
|
|
|
def test_user_get_another_public_team_page():
|
|
"""Can a registered user load the public profile of another user (/users/1)"""
|
|
app = create_ctfd()
|
|
with app.app_context():
|
|
register_user(app, name='user1', email='user1@ctfd.io') # ID 2
|
|
register_user(app, name='user2', email='user2@ctfd.io') # ID 3
|
|
client = login_as_user(app, name='user2')
|
|
r = client.get('/users/2')
|
|
assert r.status_code == 200
|
|
destroy_ctfd(app)
|
|
|
|
|
|
def test_user_get_private_team_page():
|
|
"""Can a registered user load their private team page /user"""
|
|
app = create_ctfd()
|
|
with app.app_context():
|
|
register_user(app)
|
|
client = login_as_user(app)
|
|
r = client.get('/user')
|
|
assert r.status_code == 200
|
|
destroy_ctfd(app)
|