126 lines
5.3 KiB
Markdown
126 lines
5.3 KiB
Markdown
# UI Smoke Test Checklist
|
||
|
||
Run these manual tests after any significant frontend change. Start the server with:
|
||
|
||
```bash
|
||
uvicorn web.app:app --reload --port 8000
|
||
```
|
||
|
||
Then open [http://localhost:8000](http://localhost:8000).
|
||
|
||
---
|
||
|
||
## 1. First Run — Project Switcher
|
||
|
||
- [ ] On first load (no `migrator_projects` in localStorage), the project switcher modal opens automatically
|
||
- [ ] Welcome copy is visible: "No projects yet. Create one below to get started."
|
||
- [ ] Cancel closes the modal (app loads with empty state)
|
||
- [ ] Type "Test Customer" in the name field → click Create Project
|
||
- [ ] Modal closes; nav footer shows "Test Customer" in the project button
|
||
- [ ] Nav footer "Current Project" label shows "Test Customer"
|
||
|
||
## 2. Project CRUD
|
||
|
||
- [ ] Click the project button in the nav → switcher modal opens
|
||
- [ ] "Test Customer" row shows with "● Active" badge
|
||
- [ ] Create a second project "Acme Corp"
|
||
- [ ] "Acme Corp" row appears; clicking it activates it and closes the modal
|
||
- [ ] Nav footer now shows "Acme Corp"
|
||
- [ ] Switch back to "Test Customer"
|
||
- [ ] Delete "Acme Corp" → confirmation dialog → confirm → row disappears
|
||
|
||
## 3. Authentication (requires .env credentials)
|
||
|
||
- [ ] Top bar shows two disconnected chips (red dot): "Adobe Sign" and "DocuSign"
|
||
- [ ] Click "Adobe Sign" chip → connects via `.env` refresh token → chip turns green
|
||
- [ ] Click "DocuSign" chip → redirects through OAuth if needed, then chip turns green
|
||
- [ ] Disconnecting either chip → chip turns red → templates clear
|
||
|
||
## 4. Templates View
|
||
|
||
- [ ] Navigate to Templates (default view or via nav)
|
||
- [ ] Templates load in a table with columns: Name, Readiness, Issues, Last Modified, DS Status, Actions
|
||
- [ ] Each template has a readiness badge (Ready / Caveats / Blocked / Migrated / Needs Update)
|
||
- [ ] Search bar filters by name in real time
|
||
- [ ] Status filter tabs (All / Not Migrated / Migrated / Needs Update) filter correctly
|
||
- [ ] "Blocked" and "Caveats" filter tabs show correct counts
|
||
- [ ] Clicking a column header sorts the table; clicking again reverses direction
|
||
- [ ] Checking a template checkbox shows the bulk bar: "1 template(s) selected"
|
||
- [ ] Selecting multiple templates updates the bulk bar count
|
||
- [ ] "Clear" button in bulk bar deselects all
|
||
|
||
## 5. Template Detail
|
||
|
||
- [ ] Click a template name → navigates to `#/templates/:id`
|
||
- [ ] Breadcrumb shows "← Templates" link
|
||
- [ ] Overview tab: shows Adobe ID, last modified date, migration status
|
||
- [ ] Issues tab: if template has blockers/warnings, shows them; otherwise shows "All ready" callout
|
||
- [ ] Migration History tab: shows past migrations for this template (or "No history" callout)
|
||
- [ ] "Migrate" button in detail header opens options modal
|
||
|
||
## 6. Dry Run Migration
|
||
|
||
- [ ] Select 1–3 templates → click "Migrate Selected →"
|
||
- [ ] Options modal opens with toggles (Dry Run off, Overwrite off, Include Documents on)
|
||
- [ ] Enable Dry Run toggle → click "Run Migration"
|
||
- [ ] Progress modal shows per-template rows with 🔍 icons
|
||
- [ ] "View Results →" button appears when complete
|
||
- [ ] Results view shows Dry Run count > 0, Created/Updated = 0
|
||
- [ ] Export CSV button downloads a CSV file
|
||
|
||
## 7. Real Migration
|
||
|
||
- [ ] Select templates that are "Not Migrated"
|
||
- [ ] Options modal → Dry Run off, Overwrite off → Run Migration
|
||
- [ ] Progress shows ✅ icons for created templates
|
||
- [ ] Results view shows Created count > 0
|
||
- [ ] Navigate back to Templates → readiness badges update to "Migrated"
|
||
|
||
## 8. Issues & Warnings View
|
||
|
||
- [ ] Navigate to Issues & Warnings via nav
|
||
- [ ] If any templates have blockers: Blockers section shows with red styling
|
||
- [ ] If any templates have warnings: Warnings section shows "Migrate Anyway" button
|
||
- [ ] "View Detail" links navigate to the correct template detail page
|
||
- [ ] Nav badge on "Issues & Warnings" shows correct blocked count (or hidden if 0)
|
||
|
||
## 9. Verification View (requires DocuSign credentials)
|
||
|
||
- [ ] Navigate to Verification via nav
|
||
- [ ] Migrated templates appear in the table with "Not Tested" status
|
||
- [ ] Click "Send Test" → dialog opens with pre-filled name/email from Settings
|
||
- [ ] Enter test recipient → Send Test → row status changes to "Sent" with spinner
|
||
- [ ] Status polls every 5s; updates to "Delivered" then "Completed" (or "Verified")
|
||
- [ ] "Void" button appears → clicking it confirms and voids the envelope → status → "Voided"
|
||
|
||
## 10. History & Audit View
|
||
|
||
- [ ] Navigate to History & Audit
|
||
- [ ] All migration records appear in a table, newest first
|
||
- [ ] Search by template name filters rows
|
||
- [ ] Status filter tabs work correctly
|
||
- [ ] Date range filter narrows results
|
||
- [ ] Clicking a row with warnings/blockers expands to show them
|
||
- [ ] Checksum column shows 8-char truncation; hover shows full hash
|
||
- [ ] "Export CSV" downloads a CSV with all filtered rows
|
||
|
||
## 11. Settings
|
||
|
||
- [ ] Navigate to Settings via nav
|
||
- [ ] Fill in test recipient name and email → Save → "✓ Saved" confirmation appears
|
||
- [ ] Refresh page → values persist in the form (read from localStorage)
|
||
- [ ] Toggle "Overwrite Existing by Default" → Save → open migration modal → toggle starts in correct state
|
||
- [ ] Connection info section shows correct Adobe Sign and DocuSign connection status
|
||
|
||
---
|
||
|
||
## Regression: Backend Test Suite
|
||
|
||
After any changes:
|
||
|
||
```bash
|
||
pytest tests/ -v
|
||
```
|
||
|
||
Expected: **≥ 118 tests passing**
|