def test_tracker_store(store, pair):
    filename, domainpath = pair
    domain = Domain.load(domainpath)
    tracker = tracker_from_dialogue_file(filename, domain)
    store.save(tracker)
    restored = store.retrieve(tracker.sender_id)
    assert restored == tracker
Exemple #2
0
def test_inmemory_tracker_store(filename):
    domain = Domain.load("data/test_domains/default.yml")
    tracker = tracker_from_dialogue_file(filename, domain)
    tracker_store = InMemoryTrackerStore(domain)
    tracker_store.save(tracker)
    restored = tracker_store.retrieve(tracker.sender_id)
    assert restored == tracker
def test_inmemory_tracker_store(filename):
    domain = Domain.load("data/test_domains/default.yml")
    tracker = tracker_from_dialogue_file(filename, domain)
    tracker_store = InMemoryTrackerStore(domain)
    tracker_store.save(tracker)
    restored = tracker_store.retrieve(tracker.sender_id)
    assert restored == tracker
def test_dialogue_serialisation(filename):
    print("testing file: {0}".format(filename))
    with io.open(filename, "r") as f:
        dialogue_json = f.read()
    restored = json.loads(dialogue_json)
    tracker = tracker_from_dialogue_file(filename)
    en_de_coded = json.loads(jsonpickle.encode(tracker.as_dialogue()))
    assert restored == en_de_coded
Exemple #5
0
def test_dialogue_serialisation(filename):
    print("testing file: {0}".format(filename))
    with io.open(filename, "r") as f:
        dialogue_json = f.read()
    restored = json.loads(dialogue_json)
    tracker = tracker_from_dialogue_file(filename)
    en_de_coded = json.loads(jsonpickle.encode(tracker.as_dialogue()))
    assert restored == en_de_coded
Exemple #6
0
def test_inmemory_tracker_store(pair):
    filename, domainpath = pair
    domain = Domain.load(domainpath)
    tracker = tracker_from_dialogue_file(filename, domain)
    tracker_store = InMemoryTrackerStore(domain)
    tracker_store.save(tracker)
    restored = tracker_store.retrieve(tracker.sender_id)
    assert restored == tracker
Exemple #7
0
def test_tracker_write_to_story(tmpdir, default_domain):
    tracker = tracker_from_dialogue_file(
            "data/test_dialogues/restaurant_search.json", default_domain)
    p = tmpdir.join("export.md")
    tracker.export_stories_to_file(p.strpath)
    stories = extract_stories_from_file(p.strpath, default_domain)
    assert len(stories) == 1
    assert len(stories[0].story_steps) == 1
    assert len(stories[0].story_steps[0].events) == 4
    assert stories[0].story_steps[0].start_checkpoint == STORY_START
    assert stories[0].story_steps[0].events[3] == SlotSet("location", "central")
Exemple #8
0
def test_tracker_write_to_story(tmpdir, default_domain):
    tracker = tracker_from_dialogue_file("data/test_dialogues/enter_name.json",
                                         default_domain)
    p = tmpdir.join("export.md")
    tracker.export_stories_to_file(p.strpath)
    trackers = extract_trackers_from_file(p.strpath, default_domain,
                                          BinaryFeaturizer())
    assert len(trackers) == 1
    recovered = trackers[0]
    assert len(recovered.events) == 8
    assert recovered.events[6] == SlotSet("location", "central")
def test_tracker_write_to_story(tmpdir, default_domain):
    tracker = tracker_from_dialogue_file("data/test_dialogues/enter_name.json",
                                         default_domain)
    p = tmpdir.join("export.md")
    tracker.export_stories_to_file(p.strpath)
    trackers = training.extract_trackers(p.strpath, default_domain,
                                         BinaryFeaturizer())
    assert len(trackers) == 1
    recovered = trackers[0]
    assert len(recovered.events) == 8
    assert recovered.events[6].type_name == "slot"
    assert recovered.events[6].key in {"location", "name"}
    assert recovered.events[6].value in {"central", "holger"}
Exemple #10
0
def test_tracker_write_to_story(tmpdir, default_domain):
    tracker = tracker_from_dialogue_file("data/test_dialogues/enter_name.json",
                                         default_domain)
    p = tmpdir.join("export.md")
    tracker.export_stories_to_file(p.strpath)
    trackers = training.load_data(p.strpath,
                                  default_domain,
                                  use_story_concatenation=False,
                                  tracker_limit=1000,
                                  remove_duplicates=False)
    assert len(trackers) == 1
    recovered = trackers[0]
    assert len(recovered.events) == 7
    assert recovered.events[5].type_name == "slot"
    assert recovered.events[5].key == "name"
    assert recovered.events[5].value == "holger"
async def test_tracker_write_to_story(tmpdir, moodbot_domain):
    tracker = tracker_from_dialogue_file("data/test_dialogues/moodbot.json",
                                         moodbot_domain)
    p = tmpdir.join("export.md")
    tracker.export_stories_to_file(p.strpath)
    trackers = await training.load_data(p.strpath,
                                        moodbot_domain,
                                        use_story_concatenation=False,
                                        tracker_limit=1000,
                                        remove_duplicates=False)
    assert len(trackers) == 1
    recovered = trackers[0]
    assert len(recovered.events) == 11
    assert recovered.events[4].type_name == "user"
    assert recovered.events[4].intent == {
        'confidence': 1.0,
        'name': 'mood_unhappy'
    }
Exemple #12
0
def test_tracker_write_to_story(tmpdir, default_domain):
    tracker = tracker_from_dialogue_file(
            "data/test_dialogues/enter_name.json", default_domain)
    p = tmpdir.join("export.md")
    tracker.export_stories_to_file(p.strpath)
    trackers = training.load_data(
            p.strpath,
            default_domain,
            use_story_concatenation=False,
            tracker_limit=1000,
            remove_duplicates=False
    )
    assert len(trackers) == 1
    recovered = trackers[0]
    assert len(recovered.events) == 7
    assert recovered.events[5].type_name == "slot"
    assert recovered.events[5].key == "name"
    assert recovered.events[5].value == "holger"
Exemple #13
0
def test_tracker_restaurant():
    domain = Domain.load("data/test_domains/default_with_slots.yml")
    filename = 'data/test_dialogues/enter_name.json'
    tracker = tracker_from_dialogue_file(filename, domain)
    assert tracker.get_slot("name") == "holger"
    assert tracker.get_slot("location") is None     # slot doesn't exist!
def test_tracker_restaurant():
    domain = Domain.load("data/test_domains/default_with_slots.yml")
    filename = 'data/test_dialogues/enter_name.json'
    tracker = tracker_from_dialogue_file(filename, domain)
    assert tracker.get_slot("name") == "holger"
    assert tracker.get_slot("location") is None     # slot doesn't exist!
Exemple #15
0
def test_dialogue_serialisation(filename):
    dialogue_json = utils.read_file(filename)
    restored = json.loads(dialogue_json)
    tracker = tracker_from_dialogue_file(filename)
    en_de_coded = json.loads(jsonpickle.encode(tracker.as_dialogue()))
    assert restored == en_de_coded
Exemple #16
0
def test_tracker_restaurant():
    domain = TemplateDomain.load("data/test_domains/default_with_slots.yml")
    filename = 'data/test_dialogues/restaurant_search.json'
    tracker = tracker_from_dialogue_file(filename, domain)
    assert tracker.get_slot("cuisine") == "indian"
    assert tracker.get_slot("location") == "central"
Exemple #17
0
def test_topic_question():
    domain = TemplateDomain.load("data/test_domains/default_with_topic.yml")
    filename = 'data/test_dialogues/topic_question.json'
    tracker = tracker_from_dialogue_file(filename, domain)
    question_topic = QuestionTopic
    assert tracker.topic.name == question_topic.name
Exemple #18
0
def test_tracker_store(filename, store):
    tracker = tracker_from_dialogue_file(filename, domain)
    store.save(tracker)
    restored = store.retrieve(tracker.sender_id)
    assert restored == tracker
Exemple #19
0
def test_tracker_store(filename, store):
    tracker = tracker_from_dialogue_file(filename, domain)
    store.save(tracker)
    restored = store.retrieve(tracker.sender_id)
    assert restored == tracker
Exemple #20
0
def test_tracker_restaurant():
    domain = Domain.load("examples/restaurantbot/restaurant_domain.yml")
    filename = 'data/test_dialogues/restaurantbot.json'
    tracker = tracker_from_dialogue_file(filename, domain)
    assert tracker.get_slot("price") == "lo"
    assert tracker.get_slot("name") is None  # slot doesn't exist!