class FoodTasteTest(unittest.TestCase): def setUp(self): self.food_taste = FoodTaste() self.food_taste.preferences({ 'item1': 1, 'item2': 2, 'item3': 3, 'item4': 4, 'item5': 5, 'item6_part1 item6_part2': 6 }) def test_unknown_food_one_item_menu(self): self.assertEqual(0, self.food_taste.rate('unknown_item')) def test_known_food_one_item_menu(self): self.assertEqual(3, self.food_taste.rate('item3')) def test_composite_menu_some_parts_unknown_highest_rating_is_chosen(self): self.assertEqual( 4, self.food_taste.rate('item3 item4 then also something else')) def test_composite_menu_all_parts_unknown(self): self.assertEqual(4, self.food_taste.rate('item3 item4 item2')) def test_empty_menu_rating_is_zero(self): self.assertEqual(0, self.food_taste.rate('')) def test_repeating_item_on_menu_does_not_change_rating(self): self.assertEqual(1, self.food_taste.rate('item1 item1 item1 item1 item1')) def test_no_preferences_configured(self): self.food_taste = FoodTaste() self.assertEqual(0, self.food_taste.rate('item1')) def test_spaces_in_preferences(self): self.assertEqual( 6, self.food_taste.rate('item6_part1 item6_part2 something else')) def test_case_in_menu_is_ignored(self): self.assertEqual(1, self.food_taste.rate('iTeM1'))
class FoodTasteTest(unittest.TestCase): def setUp(self): self.food_taste = FoodTaste() self.food_taste.preferences({ 'item1': 1, 'item2': 2, 'item3': 3, 'item4': 4, 'item5': 5, 'item6_part1 item6_part2': 6 }) def test_unknown_food_one_item_menu(self): self.assertEqual(0, self.food_taste.rate('unknown_item')) def test_known_food_one_item_menu(self): self.assertEqual(3, self.food_taste.rate('item3')) def test_composite_menu_some_parts_unknown_highest_rating_is_chosen(self): self.assertEqual(4, self.food_taste.rate('item3 item4 then also something else')) def test_composite_menu_all_parts_unknown(self): self.assertEqual(4, self.food_taste.rate('item3 item4 item2')) def test_empty_menu_rating_is_zero(self): self.assertEqual(0, self.food_taste.rate('')) def test_repeating_item_on_menu_does_not_change_rating(self): self.assertEqual(1, self.food_taste.rate('item1 item1 item1 item1 item1')) def test_no_preferences_configured(self): self.food_taste = FoodTaste() self.assertEqual(0, self.food_taste.rate('item1')) def test_spaces_in_preferences(self): self.assertEqual(6, self.food_taste.rate('item6_part1 item6_part2 something else')) def test_case_in_menu_is_ignored(self): self.assertEqual(1, self.food_taste.rate('iTeM1'))