Skip to content

Commit d42b0bd

Browse files
committed
Refactor Service Account workers tests
1 parent c4a209b commit d42b0bd

1 file changed

Lines changed: 44 additions & 29 deletions

File tree

helm-tests/tests/helm_tests/airflow_core/test_worker.py

Lines changed: 44 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -2251,51 +2251,38 @@ def test_should_add_component_specific_labels(self):
22512251
class TestWorkerServiceAccount:
22522252
"""Tests worker service account."""
22532253

2254-
def test_should_add_component_specific_labels(self):
2254+
def test_should_not_create_worker_service_account_for_local_executor(self):
22552255
docs = render_chart(
22562256
values={
2257-
"executor": "CeleryExecutor",
2258-
"workers": {
2259-
"serviceAccount": {"create": True},
2260-
"labels": {"test_label": "test_label_value"},
2261-
},
2257+
"executor": "LocalExecutor",
2258+
"workers": {"serviceAccount": {"create": True}},
22622259
},
22632260
show_only=["templates/workers/worker-serviceaccount.yaml"],
22642261
)
22652262

2266-
assert "test_label" in jmespath.search("metadata.labels", docs[0])
2267-
assert jmespath.search("metadata.labels", docs[0])["test_label"] == "test_label_value"
2263+
assert len(docs) == 0
22682264

22692265
@pytest.mark.parametrize(
2270-
("executor", "creates_service_account"),
2266+
"executor",
22712267
[
2272-
("LocalExecutor", False),
2273-
("CeleryExecutor", True),
2274-
("CeleryKubernetesExecutor", True),
2275-
("CeleryExecutor,KubernetesExecutor", True),
2276-
("KubernetesExecutor", True),
2277-
("LocalKubernetesExecutor", True),
2268+
"CeleryExecutor",
2269+
"CeleryKubernetesExecutor",
2270+
"CeleryExecutor,KubernetesExecutor",
2271+
"KubernetesExecutor",
2272+
"LocalKubernetesExecutor",
22782273
],
22792274
)
2280-
def test_should_create_worker_service_account_for_specific_executors(
2281-
self, executor, creates_service_account
2282-
):
2275+
def test_should_create_worker_service_account_for_specific_executors(self, executor):
22832276
docs = render_chart(
22842277
values={
22852278
"executor": executor,
2286-
"workers": {
2287-
"serviceAccount": {"create": True},
2288-
"labels": {"test_label": "test_label_value"},
2289-
},
2279+
"workers": {"serviceAccount": {"create": True}},
22902280
},
22912281
show_only=["templates/workers/worker-serviceaccount.yaml"],
22922282
)
2293-
if creates_service_account:
2294-
assert jmespath.search("kind", docs[0]) == "ServiceAccount"
2295-
assert "test_label" in jmespath.search("metadata.labels", docs[0])
2296-
assert jmespath.search("metadata.labels", docs[0])["test_label"] == "test_label_value"
2297-
else:
2298-
assert docs == []
2283+
2284+
assert len(docs) == 1
2285+
assert jmespath.search("kind", docs[0]) == "ServiceAccount"
22992286

23002287
def test_default_automount_service_account_token(self):
23012288
docs = render_chart(
@@ -2308,7 +2295,7 @@ def test_default_automount_service_account_token(self):
23082295
)
23092296
assert jmespath.search("automountServiceAccountToken", docs[0]) is True
23102297

2311-
def test_overridden_automount_service_account_token(self):
2298+
def test_override_automount_service_account_token(self):
23122299
docs = render_chart(
23132300
values={
23142301
"workers": {
@@ -2317,4 +2304,32 @@ def test_overridden_automount_service_account_token(self):
23172304
},
23182305
show_only=["templates/workers/worker-serviceaccount.yaml"],
23192306
)
2307+
23202308
assert jmespath.search("automountServiceAccountToken", docs[0]) is False
2309+
2310+
def test_override_name(self):
2311+
docs = render_chart(
2312+
values={
2313+
"workers": {
2314+
"serviceAccount": {"create": True, "name": "test"},
2315+
},
2316+
},
2317+
show_only=["templates/workers/worker-serviceaccount.yaml"],
2318+
)
2319+
2320+
assert jmespath.search("metadata.name", docs[0]) == "test"
2321+
2322+
def test_should_add_component_specific_labels(self):
2323+
docs = render_chart(
2324+
values={
2325+
"executor": "CeleryExecutor",
2326+
"workers": {
2327+
"serviceAccount": {"create": True},
2328+
"labels": {"test_label": "test_label_value"},
2329+
},
2330+
},
2331+
show_only=["templates/workers/worker-serviceaccount.yaml"],
2332+
)
2333+
2334+
assert "test_label" in jmespath.search("metadata.labels", docs[0])
2335+
assert jmespath.search("metadata.labels", docs[0])["test_label"] == "test_label_value"

0 commit comments

Comments
 (0)