diff options
| author | Bryan Newbold <bnewbold@robocracy.org> | 2019-04-04 15:22:27 -0700 | 
|---|---|---|
| committer | Bryan Newbold <bnewbold@robocracy.org> | 2019-04-04 15:22:27 -0700 | 
| commit | 86ccea546f93eb74cab7474fe146303d7cb296eb (patch) | |
| tree | 587e33c0db102a992e2f55f51d8283dc394bdf6d | |
| parent | 3d992047a83d0668e484700f7077753752adee21 (diff) | |
| download | fatcat-86ccea546f93eb74cab7474fe146303d7cb296eb.tar.gz fatcat-86ccea546f93eb74cab7474fe146303d7cb296eb.zip | |
start improving webface test coverage
| -rw-r--r-- | python/tests/routes.py | 118 | ||||
| -rw-r--r-- | python/tests/web_editgroup.py | 20 | ||||
| -rw-r--r-- | python/tests/web_entity_views.py | 153 | ||||
| -rw-r--r-- | python/tests/web_routes.py | 34 | 
4 files changed, 207 insertions, 118 deletions
| diff --git a/python/tests/routes.py b/python/tests/routes.py deleted file mode 100644 index ece91d65..00000000 --- a/python/tests/routes.py +++ /dev/null @@ -1,118 +0,0 @@ - -import json -import tempfile -import pytest -from fatcat_client.rest import ApiException -from fixtures import * - - -def test_static_routes(app): -    for route in ('/health.json', '/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(app): -    for route in ('work', 'release', 'creator', 'container', 'file'): -        print(route) -        rv = app.get('/{}/9999999999'.format(route)) -        assert rv.status_code == 400 - -        rv = app.get('/{}/f1f046a3-45c9-ffff-ffff-ffffffffffff'.format(route)) -        assert rv.status_code == 400 - -        rv = app.get('/{}/ccccccccccccccccccccccccca'.format(route)) -        assert rv.status_code == 404 - -    rv = app.get('/container/aaaaaaaaaaaaaeiraaaaaaaaai') -    assert rv.status_code == 200 - -    rv = app.get('/container/aaaaaaaaaaaaaeiraaaaaaaaai/history') -    assert rv.status_code == 200 - -    rv = app.get('/container/aaaaaaaaaaaaaeiraaaaaaaaai/edit') -    assert rv.status_code == 200 - -    # TODO: -    #rv = app.get('/container/create') -    #assert rv.status_code == 200 - -    rv = app.get('/container/lookup') -    assert rv.status_code == 400 - -    rv = app.get('/container/lookup?issnl=9999-9999') -    assert rv.status_code == 404 - -    rv = app.get('/container/lookup?issnl=1234-5678') -    assert rv.status_code == 302 - -    rv = app.get('/creator/aaaaaaaaaaaaaircaaaaaaaaai') -    assert rv.status_code == 200 - -    rv = app.get('/creator/aaaaaaaaaaaaaircaaaaaaaaai/history') -    assert rv.status_code == 200 - -    rv = app.get('/creator/aaaaaaaaaaaaaircaaaaaaaaai/edit') -    assert rv.status_code == 200 - -    rv = app.get('/creator/lookup?orcid=0000-0003-2088-7465') -    assert rv.status_code == 302 - -    rv = app.get('/file/aaaaaaaaaaaaamztaaaaaaaaai') -    assert rv.status_code == 200 - -    rv = app.get('/file/lookup?sha1=7d97e98f8af710c7e7fe703abc8f639e0ee507c4') -    assert rv.status_code == 302 - -    rv = app.get('/release/aaaaaaaaaaaaarceaaaaaaaaai') -    assert rv.status_code == 200 - -    rv = app.get('/release/aaaaaaaaaaaaarceaaaaaaaaai/history') -    assert rv.status_code == 200 - -    rv = app.get('/release/aaaaaaaaaaaaarceaaaaaaaaai/edit') -    assert rv.status_code == 200 - -    # TODO: -    #rv = app.get('/release/create') -    #assert rv.status_code == 200 - -    rv = app.get('/release/lookup?doi=10.123/abc') -    assert rv.status_code == 302 - -    rv = app.get('/release/lookup?doi=10.123%2Fabc') -    assert rv.status_code == 302 - -    rv = app.get('/release/search') -    assert rv.status_code == 200 - -    rv = app.get('/work/aaaaaaaaaaaaavkvaaaaaaaaai') -    assert rv.status_code == 200 - -    rv = app.get('/work/aaaaaaaaaaaaavkvaaaaaaaaai/history') -    assert rv.status_code == 200 - -    rv = app.get('/work/aaaaaaaaaaaaavkvaaaaaaaaai/edit') -    assert rv.status_code == 200 - -    rv = app.get('/work/create') -    assert rv.status_code == 404 - -    rv = app.get('/editgroup/aaaaaaaaaaaabo53aaaaaaaaae') -    assert rv.status_code == 200 - -    rv = app.get('/editgroup/ccccccccccccccccccccccccca') -    print(rv) -    print(rv.data) -    assert rv.status_code == 404 - -    #rv = app.get('/editgroup/current') -    #assert rv.status_code == 302 - -    rv = app.get('/editor/aaaaaaaaaaaabkvkaaaaaaaaae') -    assert rv.status_code == 200 - -    rv = app.get('/editor/aaaaaaaaaaaabkvkaaaaaaaaae/editgroups') -    assert rv.status_code == 200 diff --git a/python/tests/web_editgroup.py b/python/tests/web_editgroup.py new file mode 100644 index 00000000..e6185eda --- /dev/null +++ b/python/tests/web_editgroup.py @@ -0,0 +1,20 @@ + +import json +import tempfile +import pytest +from fatcat_client.rest import ApiException +from fixtures import * + +def test_web_editgroup(app): + +    rv = app.get('/editgroup/aaaaaaaaaaaabo53aaaaaaaaae') +    assert rv.status_code == 200 + +    rv = app.get('/editgroup/ccccccccccccccccccccccccca') +    assert rv.status_code == 404 + +    rv = app.get('/editor/aaaaaaaaaaaabkvkaaaaaaaaae') +    assert rv.status_code == 200 + +    rv = app.get('/editor/aaaaaaaaaaaabkvkaaaaaaaaae/editgroups') +    assert rv.status_code == 200 diff --git a/python/tests/web_entity_views.py b/python/tests/web_entity_views.py new file mode 100644 index 00000000..fe2371ed --- /dev/null +++ b/python/tests/web_entity_views.py @@ -0,0 +1,153 @@ + +import json +import tempfile +import pytest +from fatcat_client.rest import ApiException +from fixtures import * + +DUMMY_DEMO_ENTITIES = { +    'container': 'aaaaaaaaaaaaaeiraaaaaaaaai', +    'creator': 'aaaaaaaaaaaaaircaaaaaaaaai', +    'file': 'aaaaaaaaaaaaamztaaaaaaaaai', +    'fileset': 'aaaaaaaaaaaaaztgaaaaaaaaai', +    'webcapture': 'aaaaaaaaaaaaa53xaaaaaaaaai', +    'release': 'aaaaaaaaaaaaarceaaaaaaaaai', +    'work': 'aaaaaaaaaaaaavkvaaaaaaaaai', +} + +REALISTIC_DEMO_ENTITIES = { +    'container': 'aaaaaaaaaaaaaeiraaaaaaaaam', +    'creator': 'aaaaaaaaaaaaaircaaaaaaaaam', +    'file': 'aaaaaaaaaaaaamztaaaaaaaaam', +    'fileset': 'aaaaaaaaaaaaaztgaaaaaaaaam', +    'webcapture': 'aaaaaaaaaaaaa53xaaaaaaaaam', +    'release': 'aaaaaaaaaaaaarceaaaaaaaaam', +    'work': 'aaaaaaaaaaaaavkvaaaaaaaaam', +} + + +def test_entity_basics(app): + +    for entity_type, ident in DUMMY_DEMO_ENTITIES.items(): +        # good requests +        rv = app.get('/{}/{}'.format(entity_type, ident)) +        assert rv.status_code == 200 +        rv = app.get('/{}/{}/history'.format(entity_type, ident)) +        assert rv.status_code == 200 + +        # bad requests +        rv = app.get('/{}/9999999999'.format(entity_type)) +        assert rv.status_code == 400 +        rv = app.get('/{}/9999999999/history'.format(entity_type)) +        assert rv.status_code == 400 +        rv = app.get('/{}/f1f046a3-45c9-ffff-ffff-ffffffffffff'.format(entity_type)) +        assert rv.status_code == 400 +        rv = app.get('/{}/ccccccccccccccccccccccccca'.format(entity_type)) +        assert rv.status_code == 404 + + +def test_container(app): + +    rv = app.get('/container/aaaaaaaaaaaaaeiraaaaaaaaai') +    assert rv.status_code == 200 + +    rv = app.get('/container/aaaaaaaaaaaaaeiraaaaaaaaai/edit') +    assert rv.status_code == 200 + +    rv = app.get('/container/create') +    # XXX: login assert rv.status_code == 200 + + +def test_lookups(app): + +    rv = app.get('/container/lookup') +    assert rv.status_code == 400 +    rv = app.get('/container/lookup?issnl=9999-9999') +    assert rv.status_code == 404 +    rv = app.get('/container/lookup?issnl=1234-5678') +    assert rv.status_code == 302 + +    rv = app.get('/creator/lookup') +    assert rv.status_code == 400 +    rv = app.get('/creator/lookup?orcid=0000-0003-2088-7465') +    assert rv.status_code == 302 +    rv = app.get('/creator/lookup?orcid=0000-0003-2088-0000') +    assert rv.status_code == 404 + +    rv = app.get('/file/lookup') +    assert rv.status_code == 400 +    rv = app.get('/file/lookup?sha1=7d97e98f8af710c7e7fe703abc8f639e0ee507c4') +    assert rv.status_code == 302 +    rv = app.get('/file/lookup?sha1=7d97e98f8af710c7e7f00000000000000ee507c4') +    assert rv.status_code == 404 + +    rv = app.get('/fileset/lookup') +    assert rv.status_code == 404 + +    rv = app.get('/webcapture/lookup') +    assert rv.status_code == 404 + +    rv = app.get('/release/lookup') +    assert rv.status_code == 400 +    rv = app.get('/release/lookup?doi=10.123/abc') +    assert rv.status_code == 302 +    rv = app.get('/release/lookup?doi=10.123%2Fabc') +    assert rv.status_code == 302 +    rv = app.get('/release/lookup?doi=abcde') +    assert rv.status_code == 400 +    rv = app.get('/release/lookup?doi=10.1234/uuu') +    assert rv.status_code == 404 + +    rv = app.get('/work/lookup') +    assert rv.status_code == 404 + + +def test_web_creator(app): + +    rv = app.get('/creator/aaaaaaaaaaaaaircaaaaaaaaai') +    assert rv.status_code == 200 + +    rv = app.get('/creator/aaaaaaaaaaaaaircaaaaaaaaai/edit') +    assert rv.status_code == 200 + + +def test_web_file(app): + +    rv = app.get('/file/aaaaaaaaaaaaamztaaaaaaaaai') +    assert rv.status_code == 200 + +    rv = app.get('/file/aaaaaaaaaaaaamztaaaaaaaaai/edit') +    assert rv.status_code == 200 + +    rv = app.get('/file/aaaaaaaaaaaaamztaaaaaaaaai/history') +    assert rv.status_code == 200 + +def test_web_release(app): + +    rv = app.get('/release/aaaaaaaaaaaaarceaaaaaaaaai') +    assert rv.status_code == 200 + +    rv = app.get('/release/aaaaaaaaaaaaarceaaaaaaaaai/edit') +    assert rv.status_code == 200 + +    rv = app.get('/release/create') +    # XXX: login assert rv.status_code == 200 + + +def test_web_search(app): + +    rv = app.get('/release/search') +    assert rv.status_code == 200 + + +def test_web_work(app): + +    rv = app.get('/work/aaaaaaaaaaaaavkvaaaaaaaaai') +    assert rv.status_code == 200 + +    rv = app.get('/work/aaaaaaaaaaaaavkvaaaaaaaaai/edit') +    assert rv.status_code == 404 + +    rv = app.get('/work/create') +    assert rv.status_code == 404 + diff --git a/python/tests/web_routes.py b/python/tests/web_routes.py new file mode 100644 index 00000000..e6387882 --- /dev/null +++ b/python/tests/web_routes.py @@ -0,0 +1,34 @@ + +import json +import tempfile +import pytest +from fatcat_client.rest import ApiException +from fixtures import * + + +def test_static_routes(app): +    for route in ('/health.json', '/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(app): + +    rv = app.get('/editgroup/aaaaaaaaaaaabo53aaaaaaaaae') +    assert rv.status_code == 200 + +    rv = app.get('/editgroup/ccccccccccccccccccccccccca') +    print(rv) +    print(rv.data) +    assert rv.status_code == 404 + +    #rv = app.get('/editgroup/current') +    #assert rv.status_code == 302 + +    rv = app.get('/editor/aaaaaaaaaaaabkvkaaaaaaaaae') +    assert rv.status_code == 200 + +    rv = app.get('/editor/aaaaaaaaaaaabkvkaaaaaaaaae/editgroups') +    assert rv.status_code == 200 | 
