Update
This commit is contained in:
@@ -0,0 +1,48 @@
|
||||
# retoor <retoor@molodetz.nl>
|
||||
|
||||
from tests.conftest import run_async
|
||||
from devplacepy.services.devii.interaction.broker import InteractionBroker
|
||||
|
||||
|
||||
def test_answer_text_completes_open_prompt():
|
||||
captured = {}
|
||||
|
||||
async def wait_site(interaction_id, frame, timeout):
|
||||
captured["id"] = interaction_id
|
||||
outcome = broker.answer_text("13/01/1990")
|
||||
assert outcome["handled"] is True
|
||||
assert outcome["status"] == "submitted"
|
||||
return outcome["result"]
|
||||
|
||||
broker = InteractionBroker("main", wait_site=wait_site)
|
||||
result = run_async(
|
||||
broker.prompt(
|
||||
{
|
||||
"title": "When?",
|
||||
"widgets": [{"type": "date", "name": "day", "label": "Day"}],
|
||||
}
|
||||
)
|
||||
)
|
||||
assert result.status == "submitted"
|
||||
assert result.values == {"day": "13/01/1990"}
|
||||
assert result.meta.get("via") == "text"
|
||||
|
||||
|
||||
def test_answer_text_rejects_free_chat_as_date():
|
||||
async def wait_site(interaction_id, frame, timeout):
|
||||
bad = broker.answer_text("Show me number input then.")
|
||||
assert bad["status"] == "error"
|
||||
good = broker.answer_text("13/01/1990")
|
||||
return good["result"]
|
||||
|
||||
broker = InteractionBroker("main", wait_site=wait_site)
|
||||
result = run_async(
|
||||
broker.prompt(
|
||||
{
|
||||
"title": "When?",
|
||||
"widgets": [{"type": "date", "name": "day", "label": "Day"}],
|
||||
}
|
||||
)
|
||||
)
|
||||
assert result.status == "submitted"
|
||||
assert result.values == {"day": "13/01/1990"}
|
||||
Reference in New Issue
Block a user