diff options
| author | Craig Jennings <c@cjennings.net> | 2025-10-29 02:55:35 -0500 |
|---|---|---|
| committer | Craig Jennings <c@cjennings.net> | 2025-10-29 02:55:35 -0500 |
| commit | 6d9fb1b9c3525ff0c91bd6bc6eb8da46a80e0a21 (patch) | |
| tree | 7a6f91be28ed7a56d11121b918acc9d0e4b3c13e /modules/ui-theme.el | |
| parent | ea38f240452137219138c8f7db03991c47f9ed87 (diff) | |
| download | dotemacs-6d9fb1b9c3525ff0c91bd6bc6eb8da46a80e0a21.tar.gz dotemacs-6d9fb1b9c3525ff0c91bd6bc6eb8da46a80e0a21.zip | |
docs: add test future-proofing and large-scale refactoring lessons
Document key lessons from chime.el timestamp refactoring project:
## New Sections Added
**Test Future-Proofing & Time-Based Testing**
- Dynamic timestamp generation patterns and benefits
- Never hardcode dates in tests - use relative time helpers
- Mock time via function substitution (with-test-time pattern)
- Code examples showing before/after patterns
**Large-Scale Test Refactoring Strategy**
- Strategic planning: tackle biggest challenges first
- Execution approach: maintain 100% pass rate throughout
- Project management: track progress visibly, celebrate milestones
- Know when you're done: not all files need changes
**Real-World Example**
- chime.el project: 23 files, 339 tests
- 16 files refactored (251 tests), 7 files skipped (88 tests)
- 100% pass rate maintained across all refactoring
- Result: future-proof test suite that never expires
## Key Insights
- "Tackle biggest challenge first" eliminates intimidation
- Work in batches but commit individually for clean history
- Don't let perfectionism create unnecessary work
- Strategic approach builds momentum and confidence
Added "Hardcoded dates in tests" to Red Flags section.
These lessons capture the methodology that successfully completed
the hardest refactoring task in the project.
Diffstat (limited to 'modules/ui-theme.el')
0 files changed, 0 insertions, 0 deletions
