feat(vwb): expose competence yaml catalog

This commit is contained in:
Dom
2026-05-29 11:28:25 +02:00
parent e8a0fb0e42
commit c1a144c673
4 changed files with 302 additions and 3 deletions

View File

@@ -0,0 +1,34 @@
from core.competences.catalog import load_competence_catalog_actions, load_competences
def test_load_candidate_competences_from_yaml_catalog():
competences = load_competences(states=("candidate",))
ids = {competence.id for competence in competences}
assert "open_windows_search" in ids
assert "key_win_r_wait_explorer_exe" in ids
assert "key_ctrl_s_wait_notepad_exe" in ids
assert "key_alt_f4_wait_windowsterminal_exe" in ids
assert all(competence.learning_state == "candidate" for competence in competences)
def test_competence_catalog_actions_include_runtime_gap_metadata():
actions = load_competence_catalog_actions(states=("candidate",))
by_competence_id = {action["competence_id"]: action for action in actions}
alt_f4 = by_competence_id["key_alt_f4_wait_windowsterminal_exe"]
assert alt_f4["id"] == "lea_competence_key_alt_f4_wait_windowsterminal_exe"
assert alt_f4["category"] == "lea_competence"
assert alt_f4["learning_state"] == "candidate"
assert alt_f4["source"] == "competence_yaml"
assert "fermer la fenêtre Bloc-notes" in alt_f4["name"]
assert alt_f4["parameters"]["supervised"]["default"] is True
assert alt_f4["t2_known_gaps"][0]["id"] == "alt_f4_confirmation_dialog_not_covered"
def test_competence_catalog_actions_are_deterministic():
first = load_competence_catalog_actions(states=("candidate",))
second = load_competence_catalog_actions(states=("candidate",))
assert [action["id"] for action in first] == [action["id"] for action in second]