Exemplo n.º 1
0
async def test_ask_for_slot(
    domain: Dict,
    expected_action: Text,
    monkeypatch: MonkeyPatch,
    default_nlg: TemplatedNaturalLanguageGenerator,
):
    slot_name = "sun"

    action_from_name = Mock(return_value=action.ActionListen())
    endpoint_config = Mock()
    monkeypatch.setattr(action, action.action_for_name_or_text.__name__,
                        action_from_name)

    form = FormAction("my_form", endpoint_config)
    domain = Domain.from_dict(domain)
    await form._ask_for_slot(
        domain,
        default_nlg,
        CollectingOutputChannel(),
        slot_name,
        DialogueStateTracker.from_events("dasd", []),
    )

    action_from_name.assert_called_once_with(expected_action, domain,
                                             endpoint_config)
Exemplo n.º 2
0
async def test_ask_for_slot(
    domain: Dict, expected_action: Text, monkeypatch: MonkeyPatch
):
    slot_name = "sun"

    action_from_name = Mock(return_value=action.ActionListen())
    endpoint_config = Mock()
    monkeypatch.setattr(action, action.action_from_name.__name__, action_from_name)

    form = FormAction("my_form", endpoint_config)
    domain = Domain.from_dict(domain)
    await form._ask_for_slot(
        domain, None, None, slot_name, DialogueStateTracker.from_events("dasd", [])
    )

    action_from_name.assert_called_once_with(expected_action, domain, endpoint_config)
Exemplo n.º 3
0
async def test_ask_for_slot_if_not_utter_ask(
        monkeypatch: MonkeyPatch,
        default_nlg: TemplatedNaturalLanguageGenerator):
    action_from_name = Mock(return_value=action.ActionListen())
    endpoint_config = Mock()
    monkeypatch.setattr(action, action.action_for_name_or_text.__name__,
                        action_from_name)

    form = FormAction("my_form", endpoint_config)
    events = await form._ask_for_slot(
        Domain.empty(),
        default_nlg,
        CollectingOutputChannel(),
        "some slot",
        DialogueStateTracker.from_events("dasd", []),
    )

    assert not events
    action_from_name.assert_not_called()