def call_function(self): self.fake_path = self.fake_path / "skills" self.fake_path.mkdir(parents=True) self.create_fake_skill_meta(self.fake_path, **{ **self.fake_values, }) french = Language(self.fake_values["word3"], "") english = Language("English", "") self.fake_course = Course(french, english, [], [], None, None) self.result = _load_skill(self.fake_path / "food.yaml", self.fake_course)
def load_course(path): """ Load a YAML-based course into a Course() object """ data = _load_yaml(Path(path) / "course.yaml") course = data["Course"] raw_modules = data["Modules"] dumb_course = Course( target_language=_convert_language(course["Language"]), source_language=_convert_language(course["For speakers of"]), license=_convert_license(course["License"]), special_characters=course["Special characters"], dictionary=[], modules=[], ) modules = _load_modules(path, raw_modules, dumb_course) return Course( **{ **dumb_course._asdict(), "dictionary": _load_dictionary(modules), "modules": modules, })
def test_matches_definitions_in_a_case_insensitive_way(self): my_course = Course( **{ **(fakes.course1._asdict()), "dictionary": [ DictionaryItem( word="Easier", definition="by a lot", is_in_target_language=True ), ] }, ) assert _define_word(my_course, "easier", is_in_target_language=True) == { "word": "easier", "definition": "by a lot" }
def test_doesnt_include_definition_with_different_word(self): word = str(fakes.fake_value()) meaning = str(fakes.fake_value()) is_in_target_language = fakes.fake_value() my_course = Course( **{ **(fakes.course1._asdict()), "dictionary": [ DictionaryItem( word=word, definition=meaning, is_in_target_language=is_in_target_language ), ] }, ) with pytest.raises(ValueError): _define_word(my_course, "asd", is_in_target_language=is_in_target_language)
def test_normalizes_words(self): word = str(fakes.fake_value()) meaning = str(fakes.fake_value()) is_in_target_language = fakes.fake_value() my_course = Course( **{ **(fakes.course1._asdict()), "dictionary": [ DictionaryItem( word=word, definition=meaning, is_in_target_language=is_in_target_language ), ] }, ) assert _define_word(my_course, word + ",", is_in_target_language=is_in_target_language) == { "word": word + ",", "definition": meaning }
) ] language_1 = Language( name="my language", code="de", ) language_2 = Language( name="another language", code="tr", ) courseEmpty = Course(target_language=language_1, source_language=language_2, special_characters=["ä", "ß"], license=license1, modules=[], dictionary=fake_dictionary) course1 = Course(target_language=language_1, source_language=language_2, special_characters=["ä", "ß"], license=license1, modules=[ Module(title="Basics", skills=[ skills[0], skills[1], skills[2], ]), Module(title="Phrases", skills=[]),