Exemple #1
0
def adventure_api(session: hug.directives.session, input_data: str):
    """the /api endpoint for XMLHttpRequest handling"""
    adventure = Adventure(output_strategy=MarkdownPassthru())
    if session and session.get("save_data"):
        adventure.admin_load(base64.b64decode(session["save_data"].encode()))
    _output = markdown.markdown(adventure.execute(input_data.split()))
    session["save_data"] = base64.b64encode(adventure.admin_save()).decode("ascii")
    return {"input": input_data, "output": _output}
Exemple #2
0
def test_take_inaccessible_object():
    adventure = Adventure()
    assert (adventure.execute(['take', 'leaflet']) == "I don't see any leaflet here.")
Exemple #3
0
def test_take_unknown_object():
    adventure = Adventure()
    assert (adventure.execute(['take', 'printer']) == "I don't see any printer here.")
Exemple #4
0
def test_drop_known_but_not_held_object():
    adventure = Adventure()
    assert (adventure.execute(['drop', 'mat']) == "The mat is already here.")
Exemple #5
0
def test_unknown_verb():
    adventure = Adventure()
    assert(adventure.execute(['watch', 'mat']) == "I don't understand how to watch something.")