| TC-SEARCH-05 | Verify multiple ingredient filtering works | 1. Search for Thai cuisine.<br>2. Enter “chicken, basil”.<br>3. Click “Apply Filter”. | Ingredients = [chicken, basil] | Only recipes containing BOTH chicken and basil are displayed. | -- | -- |
| TC-SEARCH-05 | Verify multiple ingredient filtering works | 1. Search for Thai cuisine.<br>2. Enter “chicken, basil”.<br>3. Click “Apply Filter”. | Ingredients = [chicken, basil] | Only recipes containing BOTH chicken and basil are displayed. | Only recipes containing BOTH chicken and basil were displayed. | Pass |
| Test Case ID | Test Scenario | Test Steps | Test Data | Expected Results | Actual Results | Pass/Fail |
| TC-SEARCH-06 | Verify title search returns matching recipes | 1. Go to Search page.<br>2. Enter “Pasta” in the title search bar.<br>3. Click “Search”. | Title = Pasta | Recipes whose titles contain “Pasta” appear in results. | Recipes whose titles contained “Pasta” appeared in results. | Pass |
| Test Case ID | Test Scenario | Test Steps | Test Data | Expected Results | Actual Results | Pass/Fail |
| TC-SEARCH-08 | Verify allergy filter excludes nut recipes | 1. Select “Nut-free” allergy filter.<br>2. Click “Search”. | Allergy = Nut-free | No recipes containing nuts are displayed. | Allergen filter feature not working correctly at the moment. It shows all recipes even the one including "nuts." | Fail |
| Test Case ID | Test Scenario | Test Steps | Test Data | Expected Results | Actual Results | Pass/Fail |
| TC-SEARCH-10 | Verify “Clear All Filters” resets search | 1. Apply any filters.<br>2. Click “Clear All Filters”. | — | Filters reset and full, unfiltered recipe list is shown. | -- | -- |
| TC-SEARCH-10 | Verify “Clear All Filters” resets search | 1. Apply any filters.<br>2. Click “Clear All Filters”. | N/A | Filters reset and full, unfiltered recipe list is shown. | Filters reset and full, unfiltered recipe list was shown. | Pass |
| Test Case ID | Test Scenario | Test Steps | Test Data | Expected Results | Actual Results | Pass/Fail |
| TC-SEARCH-11 | Verify exclude ingredient filter works | 1. Go to Search page.<br>2. Enter "basil" in Exclude Ingredients field.<br>3. Click Search. | Exclude = basil | Only recipes **without basil** appear in the results. | Only recipes without basil appeared. | Pass |
| Test Case ID | Test Scenario | Test Steps | Test Data | Expected Results | Actual Results | Pass/Fail |
| TC-SEARCH-12 | Verify include + exclude contradiction returns no results | 1. Go to Search page.<br>2. Enter "basil" in Include field.<br>3. Enter "basil" in Exclude field.<br>4. Click Search. | Include = basil, Exclude = basil | No recipes should appear due to contradictory filter conditions. | No recipes were shown as expected. | Pass |
User Story 2: As HomeCookHerin, I want to rate and comment on recipes I have tried so that I can provide feedback to other cooks and mark which recipes I enjoyed.
| Test Case ID | Test Scenario | Test Steps | Test Data | Expected Results | Actual Results | Pass/Fail |
| TC-RATE-03 | Rating without logging in | 1. Log out.<br>2. Open recipe.<br>3. Attempt to rate. | -- | System prompts user to log in before rating. | -- | -- |
| TC-RATE-03 | Rating without logging in | 1. Log out.<br>2. Open recipe.<br>3. Attempt to rate. | N/A | System prompts user to log in before rating. | System prompts user to log in before rating.| Pass |
| Test Case ID | Test Scenario | Test Steps | Test Data | Expected Results | Actual Results | Pass/Fail |
| TC-RATE-04 | Prevent rating submitted twice | 1. Submit rating once.<br>2. Attempt to submit another rating without refreshing or editing. | Rating = any | System prevents duplicate submission or forces update instead of duplicate. | -- | -- |
| TC-RATE-04 | Prevent rating submitted twice | 1. Submit rating once.<br>2. Attempt to submit another rating without refreshing or editing. | Rating = any | System prevents duplicate submission or forces update instead of duplicate. | It forces updates of the ratings | Pass |
| Test Case ID | Test Scenario | Test Steps | Test Data | Expected Results | Actual Results | Pass/Fail |
| TC-RATE-05 | Average rating recalculates correctly | 1. A rates 5.<br>2. B rates 3.<br>3. C rates 4.<br>4. Reload page. | Ratings=[5,3,4] | Average rating shown as **4.0**. | -- | -- |
| TC-RATE-05 | Average rating recalculates correctly | 1. A rates 5.<br>2. B rates 3.<br>3. C rates 4.<br>4. Reload page. | Ratings=[5,3,4] | Average rating shown as **4.0**. | Average rating shown as 4.0. | Pass |
| Test Case ID | Test Scenario | Test Steps | Test Data | Expected Results | Actual Results | Pass/Fail |
| TC-COM-03 | Multiple users commenting | 1. User A comments.<br>2. Logout.<br>3. User B logs in and comments. | A:"Good", B:"Great" | Both comments appear with correct usernames and timestamps. | -- | -- |
| TC-COM-03 | Multiple users commenting | 1. User A comments.<br>2. Logout.<br>3. User B logs in and comments. | A:"Good", B:"Great" | Both comments appear with correct usernames and timestamps. | Both comments appeared with correct usernames and timestamps.| Pass |
| Test Case ID | Test Scenario | Test Steps | Test Data | Expected Results | Actual Results | Pass/Fail |