Skip to content

Commit

Permalink
scenario 4 compat (#193)
Browse files Browse the repository at this point in the history
  • Loading branch information
PietroPasotti committed Jun 29, 2023
1 parent cec2d99 commit 6c853bc
Show file tree
Hide file tree
Showing 4 changed files with 15 additions and 15 deletions.
8 changes: 4 additions & 4 deletions tests/scenario/test_setup.py
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,7 @@ def test_start_traefik_is_not_running(*_):
],
)
out = Context(charm_type=TraefikIngressCharm).run("start", state)
assert out.status.unit == ("waiting", f"waiting for service: '{_TRAEFIK_SERVICE_NAME}'")
assert out.unit_status == ("waiting", f"waiting for service: '{_TRAEFIK_SERVICE_NAME}'")


@patch("charm.KubernetesServicePatch")
Expand All @@ -53,7 +53,7 @@ def test_start_traefik_no_hostname(*_):
containers=[Container(name="traefik", can_connect=False)],
)
out = Context(charm_type=TraefikIngressCharm).run("start", state)
assert out.status.unit == ("waiting", "gateway address unavailable")
assert out.unit_status == ("waiting", "gateway address unavailable")


@patch("charm.KubernetesServicePatch")
Expand All @@ -67,7 +67,7 @@ def test_start_traefik_active(*_):
containers=[Container(name="traefik", can_connect=False)],
)
out = Context(charm_type=TraefikIngressCharm).run("start", state)
assert out.status.unit == ("active", "")
assert out.unit_status == ("active", "")


@patch("charm.KubernetesServicePatch")
Expand All @@ -79,4 +79,4 @@ def test_start_traefik_invalid_routing_mode(*_):
containers=[Container(name="traefik", can_connect=False)],
)
out = Context(charm_type=TraefikIngressCharm).run("start", state)
assert out.status.unit == ("blocked", "invalid routing mode: invalid_routing; see logs.")
assert out.unit_status == ("blocked", "invalid routing mode: invalid_routing; see logs.")
8 changes: 4 additions & 4 deletions tests/scenario/test_status.py
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ def test_start_traefik_is_not_running(self, *_):
out = Context(charm_type=TraefikIngressCharm).run("start", self.state)

# THEN unit status is `waiting`
self.assertEqual(out.status.unit, ("waiting", "waiting for service: 'traefik'"))
self.assertEqual(out.unit_status, ("waiting", "waiting for service: 'traefik'"))

@patch("charm.TraefikIngressCharm.external_host", PropertyMock(return_value=False))
def test_start_traefik_no_hostname(self, *_):
Expand All @@ -34,7 +34,7 @@ def test_start_traefik_no_hostname(self, *_):
out = Context(charm_type=TraefikIngressCharm).run("start", self.state)

# THEN unit status is `waiting`
self.assertEqual(out.status.unit, ("waiting", "gateway address unavailable"))
self.assertEqual(out.unit_status, ("waiting", "gateway address unavailable"))

@patch("charm.TraefikIngressCharm.external_host", PropertyMock(return_value="foo.bar"))
@patch("charm.TraefikIngressCharm._traefik_service_running", PropertyMock(return_value=True))
Expand All @@ -45,7 +45,7 @@ def test_start_traefik_active(self, *_):
out = Context(charm_type=TraefikIngressCharm).run("start", self.state)

# THEN unit status is `active`
self.assertEqual(out.status.unit, ("active", ""))
self.assertEqual(out.unit_status, ("active", ""))

@patch("charm.TraefikIngressCharm.external_host", PropertyMock(return_value=False))
def test_start_traefik_invalid_routing_mode(self, *_):
Expand All @@ -61,7 +61,7 @@ def test_start_traefik_invalid_routing_mode(self, *_):

# THEN unit status is `blocked`
self.assertEqual(
out.status.unit, ("blocked", "invalid routing mode: invalid_routing; see logs.")
out.unit_status, ("blocked", "invalid routing mode: invalid_routing; see logs.")
)


Expand Down
12 changes: 6 additions & 6 deletions tests/scenario/test_workload_version.py
Original file line number Diff line number Diff line change
Expand Up @@ -26,14 +26,14 @@ def setUp(self) -> None:
def test_workload_version_is_set_on_update_status(self, *_):
# GIVEN an initial state without the workload version set
out = self.context.run("start", self.state)
self.assertEqual(out.status.unit, ActiveStatus(""))
self.assertEqual(out.status.workload_version, "")
self.assertEqual(out.unit_status, ActiveStatus(""))
self.assertEqual(out.workload_version, "")

# WHEN update-status is triggered
out = self.context.run("update-status", out)

# THEN the workload version is set
self.assertEqual(out.status.workload_version, "1.2.3")
self.assertEqual(out.workload_version, "1.2.3")

@patch("charm.TraefikIngressCharm.external_host", PropertyMock(return_value="foo.bar"))
@patch("charm.TraefikIngressCharm._traefik_service_running", PropertyMock(return_value=True))
Expand All @@ -42,11 +42,11 @@ def test_workload_version_clears_on_stop(self, *_):
# GIVEN a state after update-status (which we know sets the workload version)
# GIVEN an initial state with the workload version set
out = self.context.run("update-status", self.state)
self.assertEqual(out.status.unit, ActiveStatus(""))
self.assertEqual(out.status.workload_version, "1.2.3")
self.assertEqual(out.unit_status, ActiveStatus(""))
self.assertEqual(out.workload_version, "1.2.3")

# WHEN the charm is stopped
out = self.context.run("stop", out)

# THEN workload version is cleared
self.assertEqual(out.status.workload_version, "")
self.assertEqual(out.workload_version, "")
2 changes: 1 addition & 1 deletion tox.ini
Original file line number Diff line number Diff line change
Expand Up @@ -83,7 +83,7 @@ allowlist_externals = /usr/bin/env
description = Scenario tests
deps =
pytest
ops-scenario>3
ops-scenario>=4.0
-r{toxinidir}/requirements.txt
commands =
pytest -v --tb native {[vars]tst_path}/scenario --log-cli-level=INFO -s {posargs}
Expand Down

0 comments on commit 6c853bc

Please sign in to comment.