# Quick Test Checklist - UI/UX Improvements

**Date**: 2026-01-20
**Estimated Time**: 30-45 minutes

---

## 🚀 Quick Start

### 1. Start Dev Server

```bash
podman exec -it flyer-crawler-dev npm run dev:container
```

Open browser: `http://localhost:5173`

### 2. Open DevTools

Press F12 or Ctrl+Shift+I

---

## ✅ Critical Tests (15 minutes)

### Test A: Onboarding Tour Works

**Time**: 5 minutes

1. DevTools → Application → Local Storage
2. Delete key: `flyer_crawler_onboarding_completed`
3. Refresh page (F5)
4. **PASS if**: Tour modal appears with 6 steps
5. Click through all steps or skip
6. **PASS if**: Tour closes and localStorage key is saved

**Result**: [ ] PASS [ ] FAIL

---

### Test B: Mobile Tab Bar Works

**Time**: 5 minutes

1. DevTools → Toggle Device Toolbar (Ctrl+Shift+M)
2. Select "iPhone SE" (375px width)
3. Refresh page
4. **PASS if**: Bottom tab bar visible with 4 tabs
5. Click each tab: Home, Deals, Lists, Profile
6. **PASS if**: Each tab navigates correctly and highlights

**Result**: [ ] PASS [ ] FAIL

---

### Test C: Desktop Layout Unchanged

**Time**: 3 minutes

1. Set browser width to 1440px (exit device mode)
2. Refresh page
3. **PASS if**:
   - No bottom tab bar visible
   - Left sidebar (flyer list) visible
   - Right sidebar (widgets) visible
   - 3-column layout intact

**Result**: [ ] PASS [ ] FAIL

---

### Test D: Dark Mode Works

**Time**: 2 minutes

1. Click dark mode toggle in header
2. Navigate: Home → Deals → Lists → Profile
3. **PASS if**: All pages have dark backgrounds, light text
4. Toggle back to light mode
5. **PASS if**: All pages return to light theme

**Result**: [ ] PASS [ ] FAIL

---

## 🔍 Detailed Tests (30 minutes)

### Test 1: Tour Features

**Time**: 5 minutes

- [ ] Tour step 1 points to Flyer Uploader
- [ ] Tour step 2 points to Extracted Data Table
- [ ] Tour step 3 points to Watch button
- [ ] Tour step 4 points to Watched Items List
- [ ] Tour step 5 points to Price Chart
- [ ] Tour step 6 points to Shopping List
- [ ] Skip button works (saves to localStorage)
- [ ] Tour doesn't repeat after completion

**Result**: [ ] PASS [ ] FAIL

---

### Test 2: Mobile Navigation

**Time**: 10 minutes

**At 375px (mobile)**:

- [ ] Tab bar visible at bottom
- [ ] Sidebars hidden
- [ ] Home tab navigates to `/`
- [ ] Deals tab navigates to `/deals`
- [ ] Lists tab navigates to `/lists`
- [ ] Profile tab navigates to `/profile`
- [ ] Active tab highlighted in teal
- [ ] Tabs are 44x44px (check DevTools)

**At 768px (tablet)**:

- [ ] Tab bar still visible
- [ ] Sidebars still hidden

**At 1024px+ (desktop)**:

- [ ] Tab bar hidden
- [ ] Sidebars visible
- [ ] Layout unchanged

**Result**: [ ] PASS [ ] FAIL

---

### Test 3: New Pages Work

**Time**: 5 minutes

**DealsPage (`/deals`)**:

- [ ] Shows WatchedItemsList component
- [ ] Shows PriceChart component
- [ ] Shows PriceHistoryChart component
- [ ] Can add watched items

**ShoppingListsPage (`/lists`)**:

- [ ] Shows ShoppingList component
- [ ] Can create new list
- [ ] Can add items to list
- [ ] Can delete list

**FlyersPage (`/flyers`)**:

- [ ] Shows FlyerList component
- [ ] Shows FlyerUploader component
- [ ] Can upload flyer

**Result**: [ ] PASS [ ] FAIL

---

### Test 4: Button Component

**Time**: 5 minutes

**Find buttons and test**:

- [ ] FlyerUploader: "Upload Another Flyer" (primary variant, teal)
- [ ] ShoppingList: "New List" (secondary variant, gray)
- [ ] ShoppingList: "Delete List" (danger variant, red)
- [ ] FlyerUploader: "Stop Watching" (ghost variant, transparent)
- [ ] Loading states show spinner
- [ ] Hover states work
- [ ] Dark mode variants look correct

**Result**: [ ] PASS [ ] FAIL

---

### Test 5: Admin Routes

**Time**: 5 minutes

**If you have admin access**:

- [ ] Navigate to `/admin`
- [ ] Tab bar NOT visible on admin pages
- [ ] Admin dashboard loads correctly
- [ ] Subpages work: /admin/stats, /admin/corrections
- [ ] Can navigate back to main app
- [ ] Admin pages work in mobile view (no tab bar)

**If not admin, skip this test**

**Result**: [ ] PASS [ ] FAIL [ ] SKIPPED

---

## 🐛 Error Checks (5 minutes)

### Console Errors

1. Open DevTools → Console tab
2. Navigate through entire app
3. **PASS if**: No red error messages
4. Warnings are OK (React 19 peer dependency warnings expected)

**Result**: [ ] PASS [ ] FAIL

**Errors found**: **\*\*\*\***\*\***\*\*\*\***\_\_\_**\*\*\*\***\*\***\*\*\*\***

---

### Visual Glitches

Check for:

- [ ] No white boxes in dark mode
- [ ] No overlapping elements
- [ ] Text is readable (good contrast)
- [ ] Images load correctly
- [ ] No layout jumping/flickering

**Result**: [ ] PASS [ ] FAIL

**Issues found**: **\*\*\*\***\*\***\*\*\*\***\_\_\_**\*\*\*\***\*\***\*\*\*\***

---

## 📊 Quick Summary

| Test                 | Result | Priority    |
| -------------------- | ------ | ----------- |
| A. Onboarding Tour   | [ ]    | 🔴 Critical |
| B. Mobile Tab Bar    | [ ]    | 🔴 Critical |
| C. Desktop Layout    | [ ]    | 🔴 Critical |
| D. Dark Mode         | [ ]    | 🟡 High     |
| 1. Tour Features     | [ ]    | 🟡 High     |
| 2. Mobile Navigation | [ ]    | 🔴 Critical |
| 3. New Pages         | [ ]    | 🟡 High     |
| 4. Button Component  | [ ]    | 🟢 Medium   |
| 5. Admin Routes      | [ ]    | 🟢 Medium   |
| Console Errors       | [ ]    | 🔴 Critical |
| Visual Glitches      | [ ]    | 🟡 High     |

---

## ✅ Pass Criteria

**Minimum to pass (Critical tests only)**:

- All 4 quick tests (A-D) must pass
- Mobile Navigation (Test 2) must pass
- No critical console errors

**Full pass (All tests)**:

- All tests pass or have minor issues only
- No blocking bugs
- No data loss or crashes

---

## 🚦 Final Decision

**Overall Status**: [ ] READY FOR PROD [ ] NEEDS FIXES [ ] BLOCKED

**Issues blocking production**:

1. ***
2. ***
3. ***

**Sign-off**: **\*\*\*\***\_\_\_**\*\*\*\*** **Date**: \***\*\_\_\_\*\***
