Skip to content

Commit

Permalink
update unit tests
Browse files Browse the repository at this point in the history
  • Loading branch information
Meriem-BenIsmail committed Feb 20, 2025
1 parent e9efe14 commit 82ebc09
Show file tree
Hide file tree
Showing 4 changed files with 30 additions and 19 deletions.
26 changes: 20 additions & 6 deletions tljh_repo2docker/tests/binderhub_build/test_builder.py
Original file line number Diff line number Diff line change
Expand Up @@ -14,8 +14,14 @@ async def test_add_environment(
app, minimal_repo, image_name, generated_image_name, db_session
):
name, ref = image_name.split(":")
node_selector = {"key": "value"}
r = await add_environment(
app, repo=minimal_repo, name=name, ref=ref, provider="git"
app,
repo=minimal_repo,
name=name,
ref=ref,
provider="git",
node_selector=node_selector,
)
assert r.status_code == 200
uid = r.json().get("uid", None)
Expand All @@ -27,15 +33,22 @@ async def test_add_environment(
assert images_db.name == generated_image_name
assert images_db.image_meta["display_name"] == name
assert images_db.image_meta["ref"] == ref
assert images_db.image_meta["node_selector"] == node_selector


@pytest.mark.asyncio
async def test_delete_environment(
app, minimal_repo, image_name, generated_image_name, db_session
):
name, ref = image_name.split(":")
node_selector = {"key": "value"}
r = await add_environment(
app, repo=minimal_repo, name=name, ref=ref, provider="git"
app,
repo=minimal_repo,
name=name,
ref=ref,
provider="git",
node_selector=node_selector,
)
assert r.status_code == 200
uid = r.json().get("uid", None)
Expand Down Expand Up @@ -69,13 +82,13 @@ async def test_no_repo(app, image_name):

@pytest.mark.asyncio
@pytest.mark.parametrize(
"memory, cpu",
"memory, cpu, node_selector",
[
("abcded", ""),
("", "abcde"),
("abcded", "", {"key": "value"}),
("", "abcde", {"key": "value"}),
],
)
async def test_wrong_limits(app, minimal_repo, image_name, memory, cpu):
async def test_wrong_limits(app, minimal_repo, image_name, memory, cpu, node_selector):
name, ref = image_name.split(":")
r = await add_environment(
app,
Expand All @@ -84,6 +97,7 @@ async def test_wrong_limits(app, minimal_repo, image_name, memory, cpu):
ref=ref,
memory=memory,
cpu=cpu,
node_selector=node_selector,
provider="git",
)
assert r.status_code == 400
Expand Down
18 changes: 7 additions & 11 deletions tljh_repo2docker/tests/local_build/test_builder.py
Original file line number Diff line number Diff line change
Expand Up @@ -11,9 +11,7 @@ async def test_add_environment(app, minimal_repo, image_name):
assert r.status_code == 200
image = await wait_for_image(image_name=image_name)
config = image.get("ContainerConfig", image.get("Config", {}))
assert (
config["Labels"]["tljh_repo2docker.image_name"] == image_name
)
assert config["Labels"]["tljh_repo2docker.image_name"] == image_name


@pytest.mark.asyncio
Expand Down Expand Up @@ -43,9 +41,7 @@ async def test_uppercase_repo(app, minimal_repo_uppercase, generated_image_name)
assert r.status_code == 200
image = await wait_for_image(image_name=generated_image_name)
config = image.get("ContainerConfig", image.get("Config", {}))
assert (
config["Labels"]["tljh_repo2docker.image_name"] == generated_image_name
)
assert config["Labels"]["tljh_repo2docker.image_name"] == generated_image_name


@pytest.mark.asyncio
Expand All @@ -57,16 +53,16 @@ async def test_no_repo(app, image_name):

@pytest.mark.asyncio
@pytest.mark.parametrize(
"memory, cpu",
"memory, cpu, node_selector",
[
("abcded", ""),
("", "abcde"),
("abcded", "", {"key": "value"}),
("", "abcde", {"key": "value"}),
],
)
async def test_wrong_limits(app, minimal_repo, image_name, memory, cpu):
async def test_wrong_limits(app, minimal_repo, image_name, memory, cpu, node_selector):
name, ref = image_name.split(":")
r = await add_environment(
app, repo=minimal_repo, name=name, ref=ref, memory=memory, cpu=cpu
app, repo=minimal_repo, name=name, ref=ref, memory=memory, cpu=cpu, node_selector=node_selector
)
assert r.status_code == 400
assert "must be a number" in r.text
Expand Down
2 changes: 1 addition & 1 deletion tljh_repo2docker/tests/local_build/test_images.py
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ async def test_images_list_admin(app):
)
r.raise_for_status()
assert (
'{"repo_providers": [{"label": "Git", "value": "git"}], "use_binderhub": false, "images": [], "default_mem_limit": "None", "default_cpu_limit":"None", "machine_profiles": []}'
'{"repo_providers": [{"label": "Git", "value": "git"}], "use_binderhub": false, "images": [], "default_mem_limit": "None", "default_cpu_limit":"None", "machine_profiles": [], "node_selector": {}}'
in r.text
)

Expand Down
3 changes: 2 additions & 1 deletion tljh_repo2docker/tests/utils.py
Original file line number Diff line number Diff line change
Expand Up @@ -50,7 +50,7 @@ def get_service_page(path, app, **kw):


async def add_environment(
app, *, repo, ref="HEAD", name="", memory="", cpu="", provider=None
app, *, repo, ref="HEAD", name="", memory="", cpu="", provider=None, node_selector={}
):
"""Use the POST endpoint to add a new environment"""
data = {
Expand All @@ -59,6 +59,7 @@ async def add_environment(
"name": name,
"memory": memory,
"cpu": cpu,
"node_selector": node_selector
}
if provider:
data["provider"] = provider
Expand Down

0 comments on commit 82ebc09

Please sign in to comment.