def test_skips_empty_definition(self):
     word = fakes.fake_value()
     my_course = fakes.customize(fakes.course1,
                                 dictionary=[
                                     DictionaryItem(word=word,
                                                    definition="",
                                                    reverse=False),
                                 ])
     assert define_word(my_course, word, reverse=False) == {
         "word": word,
     }
 def test_doesnt_include_definition_with_different_reverse(self):
     word = fakes.fake_value()
     meaning = fakes.fake_value()
     reverse = fakes.fake_value()
     my_course = fakes.customize(fakes.course1,
                                 dictionary=[
                                     DictionaryItem(word=word,
                                                    definition=meaning,
                                                    reverse=False),
                                 ])
     assert define_word(my_course, word, reverse=reverse) == {
         "word": word,
     }
 def test_doesnt_include_definition_with_different_word(self):
     word = fakes.fake_value()
     meaning = fakes.fake_value()
     reverse = fakes.fake_value()
     my_course = Course(
         **{
             **(fakes.course1._asdict()), "dictionary": [
                 DictionaryItem(word=word,
                                definition=meaning,
                                reverse=reverse),
             ]
         }, )
     assert define_word(my_course, "asd", reverse=reverse) == {
         "word": "asd",
     }
 def test_includes_definition(self):
     word = fakes.fake_value()
     meaning = fakes.fake_value()
     reverse = fakes.fake_value()
     my_course = Course(
         **{
             **(fakes.course1._asdict()), "dictionary": [
                 DictionaryItem(word=word,
                                definition=meaning,
                                reverse=reverse),
             ]
         }, )
     assert define_word(my_course, word, reverse=reverse) == {
         "word": word,
         "definition": meaning
     }
 def test_skips_non_matching_definitions(self):
     word = fakes.fake_value()
     meaning = fakes.fake_value()
     reverse = fakes.fake_value()
     my_course = fakes.customize(fakes.course1,
                                 dictionary=[
                                     DictionaryItem(word=None,
                                                    definition=None,
                                                    reverse=None),
                                     DictionaryItem(word=word,
                                                    definition=meaning,
                                                    reverse=reverse),
                                 ])
     assert define_word(my_course, word, reverse=reverse) == {
         "word": word,
         "definition": meaning
     }
 def test_definition_not_found(self):
     word = fakes.fake_value()
     assert define_word(fakes.course1, word, reverse=False) == {
         "word": word
     }