Files
cv-site/tests/mjs
juanatsap 5d5b050029 feat: confirm no hyperscript def limit + update documentation
MAJOR FINDING: Latest hyperscript version has NO 3 def statement limit!

Test Results (tests/mjs/9-hyperscript-def-limit.test.mjs):
 1 def statement - PASS
 2 def statements - PASS
 3 def statements - PASS
 4 def statements - PASS (beyond historical limit)
 5 def statements - PASS (well beyond limit)

Changes:
1. Created comprehensive def limit test
   - tests/mjs/9-hyperscript-def-limit.test.mjs
   - Tests 1, 2, 3, 4, 5 def statements
   - Verifies both parsing and function execution
   - Provides detailed analysis and recommendations

2. Updated PROJECT-MEMORY.md
   - Section 2: Changed from "NEEDS RETESTING" to "REMOVED IN LATEST VERSION"
   - Documented test findings and historical context
   - Added migration plan for hyperscript file organization
   - Updated test count to 10 systematic tests

3. Updated doc/HYPERSCRIPT-RULES.md
   - Rule 2: Removed 3 def limit warning
   - Documented historical context (Hyperscript 0.9.12 had limit)
   - New best practice: Organize by category in separate files
   - Added recommended file structure

Impact:
- Can now use unlimited def statements in hyperscript
- Enables cleaner architecture with category-based organization
- Allows migration from cv-functions.js back to hyperscript
- Better alignment with hypermedia/server-driven pattern

Next Steps:
- Create organized hyperscript file structure
- Migrate toggle functions from JavaScript to hyperscript
- Migrate hover sync functions to hyperscript
- Test each migration thoroughly
2025-11-17 15:02:30 +00:00
..

CV Project Test Suite

Organized test files for the CV application. All tests use Playwright for browser automation.

Test Files

0-zoom.test.mjs

Purpose: Test zoom control functionality

  • Verifies zoom control elements exist
  • Tests visibility toggle
  • Validates zoom slider interaction
  • Checks real-time zoom updates

Run: bun tests/mjs/0-zoom.test.mjs

1-toggles.test.mjs

Purpose: Comprehensive toggle testing with real-time visual verification

  • Tests all 3 toggles (Length, Icons, Theme)
  • Validates action bar toggles
  • Tests hamburger menu toggles
  • Verifies synchronization between action bar and menu
  • Checks localStorage persistence
  • Critical: Validates that toggles update DOM immediately (no refresh needed)
  • Takes screenshots for visual comparison

Run: bun tests/mjs/1-toggles.test.mjs

Running All Tests

# Run individual tests
bun tests/mjs/0-zoom.test.mjs
bun tests/mjs/1-toggles.test.mjs

# Run all tests sequentially
for test in tests/mjs/*.test.mjs; do
  echo "Running $test..."
  bun "$test"
  echo ""
done

Test Requirements

  • Server must be running on http://localhost:1999
  • Browser window will stay open after tests for manual verification
  • Press Ctrl+C to exit test

Test Output

All tests provide:

  • Clear pass/fail indicators
  • 📊 Summary of results
  • Detailed error messages
  • 🎉 Success confirmation

Screenshots

Toggle tests save screenshots to tests/screenshots/:

  • before-icon-toggle.png - Before clicking icon toggle
  • after-icon-toggle.png - After clicking icon toggle

Use these to visually verify rendering changes.