diff options
Diffstat (limited to 'python/tests/routes.py')
-rw-r--r-- | python/tests/routes.py | 67 |
1 files changed, 67 insertions, 0 deletions
diff --git a/python/tests/routes.py b/python/tests/routes.py new file mode 100644 index 00000000..79d97fe4 --- /dev/null +++ b/python/tests/routes.py @@ -0,0 +1,67 @@ + +import json +import tempfile +import pytest +import fatcat +import fatcat.sql +from fatcat.models import * +from fixtures import * + + +def test_static_routes(rich_app): + app = rich_app + + for route in ('/health', '/robots.txt', '/', '/about'): + rv = app.get(route) + assert rv.status_code == 200 + + assert app.get("/static/bogus/route").status_code == 404 + + +def test_all_views(rich_app): + app = rich_app + + for route in ('work', 'release', 'creator', 'container', 'file'): + print(route) + rv = app.get('/{}/1'.format(route)) + assert rv.status_code == 200 + + rv = app.get('/{}/999999999999'.format(route)) + assert rv.status_code == 404 + + rv = app.get('/work/random') + rv = app.get(rv.location) + assert rv.status_code == 200 + + rv = app.get('/work/random') + assert rv.status_code == 302 + + rv = app.get('/work/create') + assert rv.status_code == 200 + + rv = app.get('/release/random') + assert rv.status_code == 302 + + rv = app.get('/release/1/changelog') + assert rv.status_code == 200 + + rv = app.get('/editgroup/1') + assert rv.status_code == 200 + + rv = app.get('/editgroup/99999999') + assert rv.status_code == 404 + + rv = app.get('/editgroup/current') + assert rv.status_code == 302 + + rv = app.get('/editor/admin') + assert rv.status_code == 200 + + rv = app.get('/editor/bizzaro') + assert rv.status_code == 404 + + rv = app.get('/editor/admin/changelog') + assert rv.status_code == 200 + + rv = app.get('/editor/bizarro/changelog') + assert rv.status_code == 404 |