feat(vwb): log supervised competence verdicts
This commit is contained in:
38
tests/unit/test_supervised_popup_guard.py
Normal file
38
tests/unit/test_supervised_popup_guard.py
Normal file
@@ -0,0 +1,38 @@
|
||||
from visual_workflow_builder.backend.services.supervised_popup_guard import (
|
||||
build_unexpected_popup_pause,
|
||||
)
|
||||
|
||||
|
||||
def test_unexpected_popup_builds_pause_without_auto_resolution():
|
||||
pause = build_unexpected_popup_pause(
|
||||
{"pattern": "confirm_save_overwrite", "title": "Enregistrer sous"},
|
||||
expected_state={
|
||||
"window_title_in": ["Executer"],
|
||||
"process_active": "explorer.exe",
|
||||
},
|
||||
competence_id="key_win_r_wait_explorer_exe",
|
||||
source_method_id="step_2_wait_state",
|
||||
)
|
||||
|
||||
assert pause is not None
|
||||
assert pause["needs_human"] is True
|
||||
assert pause["pause_reason"] == "unexpected_popup"
|
||||
assert pause["auto_resolution"] is False
|
||||
assert pause["write_back_enabled"] is False
|
||||
assert pause["detected_popup"]["title"] == "Enregistrer sous"
|
||||
|
||||
|
||||
def test_expected_popup_title_does_not_build_pause():
|
||||
pause = build_unexpected_popup_pause(
|
||||
{"pattern": "run_dialog", "title": "Executer"},
|
||||
expected_state={"window_title_in": ["Executer"]},
|
||||
)
|
||||
|
||||
assert pause is None
|
||||
|
||||
|
||||
def test_missing_popup_does_not_build_pause():
|
||||
assert build_unexpected_popup_pause(
|
||||
None,
|
||||
expected_state={"window_title_in": ["Executer"]},
|
||||
) is None
|
||||
Reference in New Issue
Block a user