# ✅ Profile Screen Testing Checklist

## 📱 UI Components

### Profile Card

- [ ] Avatar displays correct initials
- [ ] Avatar has proper size (100dp)
- [ ] Avatar background color is PrimaryBlue
- [ ] Name is displayed correctly
- [ ] Username shows with @ prefix (if set)
- [ ] Public key shows abbreviated format (first 3 + "..." + last 3)
- [ ] All elements are centered properly

### Edit Fields

- [ ] "Your name" field is editable
- [ ] "Username" field is editable with @ prefix
- [ ] Placeholder text appears when fields are empty
- [ ] Text color matches theme (light/dark)
- [ ] Divider appears between fields
- [ ] Text wraps properly for long inputs

### Save Button

- [ ] Button is hidden when no changes
- [ ] Button appears when name changes
- [ ] Button appears when username changes
- [ ] Fade in animation works smoothly
- [ ] Button has blue color (PrimaryBlue)
- [ ] Button text says "Save"
- [ ] Clicking button calls onSaveProfile callback

### Public Key Field

- [ ] Shows "Public Key" label
- [ ] Shows abbreviated key value
- [ ] Clickable to copy
- [ ] Shows "Copied!" when clicked
- [ ] "Copied!" text is green color
- [ ] Returns to normal after 1.5 seconds
- [ ] Actually copies to clipboard
- [ ] Help text appears below field

### Settings Section

- [ ] "SETTINGS" title is uppercase and gray
- [ ] Three items are displayed:
  - [ ] Updates (lime green icon)
  - [ ] Theme (indigo icon)
  - [ ] Safety (purple icon)
- [ ] Each item has:
  - [ ] Colored icon background (36dp, rounded 8dp)
  - [ ] White icon (20dp)
  - [ ] Title text
  - [ ] Subtitle text
  - [ ] Chevron arrow
- [ ] Dividers between items
- [ ] Clickable items respond to taps
- [ ] Help text appears below section

### Logout Section

- [ ] Red icon background
- [ ] Logout icon (outlined)
- [ ] Red text for title
- [ ] Gray subtitle
- [ ] NO chevron arrow
- [ ] Clickable
- [ ] Help text appears below

## 🎨 Theme Support

### Dark Theme

- [ ] Background: #0F0F0F
- [ ] Surface: #1A1A1A
- [ ] Text: White
- [ ] Secondary text: #999999
- [ ] Dividers: #2A2A2A
- [ ] Icons: #999999

### Light Theme

- [ ] Background: White
- [ ] Surface: #F5F5F5
- [ ] Text: #1A1A1A
- [ ] Secondary text: #666666
- [ ] Dividers: #E8E8E8
- [ ] Icons: #666666

## 🔄 Animations

- [ ] Profile screen fades in (200ms)
- [ ] Profile screen fades out (150ms)
- [ ] Save button fades in + expands
- [ ] Save button fades out + shrinks
- [ ] "Copied!" animation works
- [ ] No lag or stuttering
- [ ] Smooth transitions

## 🔧 Functionality

### Navigation

- [ ] Can open from ChatsListScreen (avatar click)
- [ ] Can open from SettingsScreen (profile card click)
- [ ] Back button returns to previous screen
- [ ] Screen closes properly
- [ ] No memory leaks

### Data Handling

- [ ] accountName loads correctly
- [ ] accountUsername loads correctly
- [ ] accountPublicKey loads correctly
- [ ] Changes are tracked properly
- [ ] onSaveProfile receives correct data
- [ ] Unsaved changes are handled

### Callbacks

- [ ] onBack() works
- [ ] onSaveProfile(name, username) works
- [ ] onLogout() works
- [ ] onNavigateToTheme() works
- [ ] onNavigateToSafety() works
- [ ] onNavigateToUpdates() works

## 📐 Layout

- [ ] Top bar height is correct
- [ ] Content scrolls properly
- [ ] No content cutoff
- [ ] Proper spacing (16dp, 24dp, 32dp)
- [ ] Rounded corners (16dp) on cards
- [ ] Icon backgrounds (8dp radius)
- [ ] Text alignment is correct
- [ ] No overlap between elements

## 🔤 Typography

- [ ] Top bar: 20sp, SemiBold
- [ ] Section titles: 13sp, SemiBold, uppercase
- [ ] Name: 24sp, Bold
- [ ] Username/key: 14sp
- [ ] Field labels: 13sp, Medium
- [ ] Field values: 16sp
- [ ] Item titles: 16sp, Medium
- [ ] Item subtitles: 13sp
- [ ] Help text: 12sp, line height 16sp

## 📱 Edge Cases

- [ ] Empty name field
- [ ] Empty username field
- [ ] Very long name (20+ chars)
- [ ] Very long username (20+ chars)
- [ ] Special characters in name
- [ ] Special characters in username
- [ ] Quick repeated clicks
- [ ] Back press during animation
- [ ] Screen rotation (if applicable)
- [ ] Low memory conditions

## 🐛 Known Issues

### TODO Items

- [ ] Username not loading from account (hardcoded "")
- [ ] Save profile not persisting to database
- [ ] Logout not implemented
- [ ] Updates screen not created
- [ ] Safety screen not created

## 📝 Testing Notes

```
Date: _____________
Tester: _____________
Device: _____________
OS Version: _____________

Issues Found:
_________________________________
_________________________________
_________________________________

Additional Comments:
_________________________________
_________________________________
_________________________________
```

## 🚀 Performance

- [ ] Screen opens < 100ms
- [ ] Animations run at 60fps
- [ ] No janky scrolling
- [ ] Keyboard appears smoothly
- [ ] No UI thread blocking
- [ ] Memory usage is acceptable

## ♿ Accessibility

- [ ] Text is readable at all sizes
- [ ] Sufficient color contrast
- [ ] Touch targets are 48dp minimum
- [ ] Screen reader compatible (if implemented)
- [ ] Focus indicators visible

## 🌍 Localization

- [ ] All text strings are in English
- [ ] Ready for i18n (no hardcoded strings in critical paths)
- [ ] RTL support consideration

---

## ✅ Sign Off

- [ ] All critical items tested
- [ ] No blocking issues
- [ ] Ready for production

**Tested by:** ******\_\_\_******  
**Date:** ******\_\_\_******  
**Sign:** ******\_\_\_******
