diff --git a/__init__.py b/__init__.py index fc41a8b..731e201 100644 --- a/__init__.py +++ b/__init__.py @@ -63,7 +63,7 @@ def handle_add_meal(self, _: Message): self.log.info(f"Adding a new meal: {new_meal}") if new_meal: self.meals = f"{self.meals},{new_meal}" - self.speak_dialog("meal.added") + self.speak_dialog("meal.added", {"new_meal": new_meal}) except Exception as err: self.log.exception(err) self.speak_dialog("failed.to.add.meal") diff --git a/test/test_skill.py b/test/test_skill.py index 15c2380..221f2e5 100644 --- a/test/test_skill.py +++ b/test/test_skill.py @@ -1,4 +1,4 @@ -# pylint: disable=missing-docstring +# pylint: disable=missing-docstring,redefined-outer-name import shutil import string from json import dumps @@ -92,6 +92,25 @@ def test_long_list_of_meals(self, test_skill): }, ) + @pytest.mark.parametrize("meal", [ + "cheeseburgers", + "spaghetti carbonara", + "sushi", + "dahl", + "lengua tacos", + "moussaka", + "feijoada", + "pad thai", + "tagine", + ]) + def test_add_meal(self, test_skill, meal): + test_skill.ask_yesno = Mock() + test_skill.get_response = Mock(return_value=meal) + test_skill.handle_add_meal(None) + test_skill.speak_dialog.assert_called() + test_skill.ask_yesno.assert_not_called() + test_skill.speak_dialog.assert_called_with("meal.added", {"new_meal": meal}) + if __name__ == "__main__": pytest.main()