Files
crowd-funder-from-jason/docs/migration-testing/TESTING_CONTACTIMPORT.md
Matthew Raymer 2e2d858cc9 Fix migration dates, add multi-platform testing infrastructure, and organize docs
Migration Date Corrections:
- Update all migration TODO comments to use correct date: 2025-07-06
- Add proper TypeScript type declarations for $route and $router in DeepLinkErrorView
- Fix template property references to use $route instead of route

Multi-Platform Testing Infrastructure:
- Add comprehensive multi-platform testing requirements for migrations
- Update component migration template with platform testing requirements
- Establish sign-off requirements for web, desktop, and mobile platforms
- Document expected outcomes and validation procedures

Migration Testing Organization:
- Create docs/migration-testing/ folder for testing documentation
- Move TESTING_CONTACTIMPORT.md from project root to migration-testing/
- Relocate all migration-checklist-*.md files to migration-testing/
- Add comprehensive README.md with organization guidelines
- Update file references in components and TODOs
- Establish naming conventions and quality standards

Files added:
- docs/migration-testing/README.md
- docs/migration-testing/TESTING_CONTACTIMPORT.md
- docs/migration-testing/migration-checklist-ContactImportView.md
- docs/migration-testing/migration-checklist-MembersList.md

Files modified:
- src/views/ContactImportView.vue (date correction)
- src/components/MembersList.vue (date correction, reference path update)
- src/views/DeepLinkErrorView.vue (date correction, Vue router types)
- docs/migration-templates/component-migration.md (multi-platform requirements)

Files moved:
- TESTING_CONTACTIMPORT.md → docs/migration-testing/
- docs/migration-checklist-*.md → docs/migration-testing/

This establishes comprehensive testing infrastructure for all future migrations
with proper organization and multi-platform validation requirements.
2025-07-06 06:05:18 +00:00

80 lines
2.3 KiB
Markdown

# ContactImportView.vue Testing Guide
## Quick Testing Setup
- Web server running at: `http://localhost:3000`
- Migration completed: 2025-07-06
- Component: `src/views/ContactImportView.vue`
## Test URLs (Copy/Paste into Browser)
### 1. Basic Page Load
```
http://localhost:3000/contact-import
```
**Expected**: Manual JWT input page loads
### 2. Single Contact Import
```
http://localhost:3000/contact-import?contacts=[{"did":"did:test:123","name":"Test User"}]
```
**Expected**: "Test User" appears in import list
### 3. Multiple Contacts Import
```
http://localhost:3000/contact-import?contacts=[{"did":"did:test:alice","name":"Alice"},{"did":"did:test:bob","name":"Bob"}]
```
**Expected**: Both contacts appear in import list
### 4. Malformed Data Test
Navigate to basic page and paste this into textarea:
```
[{"invalid":"data","missing":"did"}]
```
**Expected**: Error message displays
## Browser Developer Tools Validation
### Console Tab
- Check for errors during page load
- Verify error logging works (test malformed data)
- Look for properly formatted log messages
### Application Tab
- Navigate to: IndexedDB → TimeSafari
- Check `contacts` table for imported contacts
- Check `logs` table for error entries
### Network Tab
- Monitor API calls during import
- Verify visibility setting API calls (if enabled)
## Testing Checklist
### Web Platform (Chrome) ✅/❌
- [ ] Basic page loads without errors
- [ ] Single contact import works
- [ ] Multiple contacts import works
- [ ] Database operations work (check IndexedDB)
- [ ] Error handling works (malformed data)
- [ ] Logging works (console + database)
- [ ] Visibility setting works
- [ ] Duplicate detection works
### Expected Database Operations
- **Insert**: New contacts added to contacts table
- **Update**: Existing contacts updated if imported again
- **Logging**: Errors recorded in logs table
- **Persistence**: Data survives page refresh
### Success Criteria
- ✅ No console errors during normal operation
- ✅ Contacts successfully imported and visible in contacts list
- ✅ Error scenarios handled gracefully
- ✅ Database operations work correctly
- ✅ Logging functions as expected
## Notes
- Test both with and without existing contacts
- Verify redirect to contacts page after import
- Check success/error notifications display
- Validate contact data structure in database