Update
This commit is contained in:
@@ -0,0 +1,57 @@
|
||||
# retoor <retoor@molodetz.nl>
|
||||
|
||||
from devplacepy.services.devii.interaction.markdown import (
|
||||
project_markdown,
|
||||
project_plain_menu,
|
||||
)
|
||||
from devplacepy.services.devii.interaction.schema import validate_prompt_args
|
||||
|
||||
|
||||
def _request():
|
||||
return validate_prompt_args(
|
||||
{
|
||||
"title": "Deploy to staging?",
|
||||
"description": "Ship the current build.",
|
||||
"widgets": [
|
||||
{
|
||||
"type": "choice",
|
||||
"name": "env",
|
||||
"label": "Target environment",
|
||||
"default": "staging",
|
||||
"options": [
|
||||
{"value": "production", "label": "Production"},
|
||||
{"value": "staging", "label": "Staging"},
|
||||
{"value": "dev", "label": "Development"},
|
||||
],
|
||||
},
|
||||
{
|
||||
"type": "text",
|
||||
"name": "notes",
|
||||
"label": "Ship notes",
|
||||
"required": False,
|
||||
"max_length": 200,
|
||||
},
|
||||
],
|
||||
}
|
||||
)
|
||||
|
||||
|
||||
def test_markdown_projection_has_title_and_id():
|
||||
md = project_markdown(_request(), "ix-a1b2")
|
||||
assert "### Deploy to staging?" in md
|
||||
assert "`staging`" in md
|
||||
assert "<!-- ai-interaction:ix-a1b2 -->" in md
|
||||
assert "[Confirm]" in md
|
||||
|
||||
|
||||
def test_plain_menu_for_confirm():
|
||||
req = validate_prompt_args(
|
||||
{
|
||||
"title": "Delete?",
|
||||
"widgets": [
|
||||
{"type": "confirm", "name": "delete", "label": "Delete", "default": False}
|
||||
],
|
||||
}
|
||||
)
|
||||
text = project_plain_menu(req)
|
||||
assert "yes | no" in text.lower() or "Reply: yes" in text
|
||||
Reference in New Issue
Block a user