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
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
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
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
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")
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"}
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' }
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"
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!
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
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"
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
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
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
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!