Skip to content

Commit c8193d7

Browse files
committed
Split specific handler tests out of test_main
1 parent d70da40 commit c8193d7

File tree

3 files changed

+55
-45
lines changed

3 files changed

+55
-45
lines changed

binderhub/tests/test_legacy.py

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
"""Test legacy redirects"""
2+
3+
import pytest
4+
5+
from .utils import async_requests
6+
7+
8+
@pytest.mark.parametrize(
9+
"old_url, new_url",
10+
[
11+
(
12+
"/repo/binderhub-ci-repos/requirements",
13+
"/v2/gh/binderhub-ci-repos/requirements/master",
14+
),
15+
(
16+
"/repo/binderhub-ci-repos/requirements/",
17+
"/v2/gh/binderhub-ci-repos/requirements/master",
18+
),
19+
(
20+
"/repo/binderhub-ci-repos/requirements/notebooks/index.ipynb",
21+
"/v2/gh/binderhub-ci-repos/requirements/master?urlpath=%2Fnotebooks%2Findex.ipynb",
22+
),
23+
],
24+
)
25+
async def test_legacy_redirect(app, old_url, new_url):
26+
r = await async_requests.get(app.url + old_url, allow_redirects=False)
27+
assert r.status_code == 302
28+
assert r.headers["location"] == new_url

binderhub/tests/test_main.py

Lines changed: 0 additions & 45 deletions
Original file line numberDiff line numberDiff line change
@@ -7,34 +7,9 @@
77
import pytest
88
from bs4 import BeautifulSoup
99

10-
from binderhub import __version__ as binder_version
11-
1210
from .utils import async_requests
1311

1412

15-
@pytest.mark.parametrize(
16-
"old_url, new_url",
17-
[
18-
(
19-
"/repo/binderhub-ci-repos/requirements",
20-
"/v2/gh/binderhub-ci-repos/requirements/master",
21-
),
22-
(
23-
"/repo/binderhub-ci-repos/requirements/",
24-
"/v2/gh/binderhub-ci-repos/requirements/master",
25-
),
26-
(
27-
"/repo/binderhub-ci-repos/requirements/notebooks/index.ipynb",
28-
"/v2/gh/binderhub-ci-repos/requirements/master?urlpath=%2Fnotebooks%2Findex.ipynb",
29-
),
30-
],
31-
)
32-
async def test_legacy_redirect(app, old_url, new_url):
33-
r = await async_requests.get(app.url + old_url, allow_redirects=False)
34-
assert r.status_code == 302
35-
assert r.headers["location"] == new_url
36-
37-
3813
@pytest.mark.remote
3914
@pytest.mark.helm
4015
async def test_custom_template(app):
@@ -44,26 +19,6 @@ async def test_custom_template(app):
4419
assert "test-template" in r.text
4520

4621

47-
@pytest.mark.remote
48-
async def test_versions_handler(app):
49-
# Check that the about page loads
50-
r = await async_requests.get(app.url + "/versions")
51-
assert r.status_code == 200
52-
53-
data = r.json()
54-
# builder_info is different for KubernetesExecutor and LocalRepo2dockerBuild
55-
try:
56-
import repo2docker
57-
58-
allowed_builder_info = [{"repo2docker-version": repo2docker.__version__}]
59-
except ImportError:
60-
allowed_builder_info = []
61-
allowed_builder_info.append({"build_image": app.build_image})
62-
63-
assert data["builder_info"] in allowed_builder_info
64-
assert data["binderhub"].split("+")[0] == binder_version.split("+")[0]
65-
66-
6722
@pytest.mark.parametrize(
6823
"origin,host,expected_origin",
6924
[

binderhub/tests/test_version.py

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
"""Test version handler"""
2+
3+
import pytest
4+
5+
from binderhub import __version__ as binder_version
6+
7+
from .utils import async_requests
8+
9+
10+
@pytest.mark.remote
11+
async def test_versions_handler(app):
12+
# Check that the about page loads
13+
r = await async_requests.get(app.url + "/versions")
14+
assert r.status_code == 200
15+
16+
data = r.json()
17+
# builder_info is different for KubernetesExecutor and LocalRepo2dockerBuild
18+
try:
19+
import repo2docker
20+
21+
allowed_builder_info = [{"repo2docker-version": repo2docker.__version__}]
22+
except ImportError:
23+
allowed_builder_info = []
24+
allowed_builder_info.append({"build_image": app.build_image})
25+
26+
assert data["builder_info"] in allowed_builder_info
27+
assert data["binderhub"].split("+")[0] == binder_version.split("+")[0]

0 commit comments

Comments
 (0)