Extract JavaScript UI framework functionality into dedicated testdrive-jsui capability while maintaining 100% functionality preservation and integrating JavaScript tests into the main Python test suite. Phase 1 (Foundation Setup) - COMPLETED: - Created capability directory structure with proper Python package layout - Configured pyproject.toml with Node.js subprocess dependencies - Set up package.json with Jest + JSDOM testing framework - Implemented Python-JavaScript bridge for seamless test integration - Created comprehensive capability Makefile with all testing targets - Added detailed README documentation for capability usage Phase 2 (Integration Layer) - COMPLETED: - Built Python test wrappers for JavaScript test execution via subprocess - Integrated with pytest discovery system for unified test experience - Added capability targets to main Makefile delegation system - Verified test integration works with main test suite Phase 3 (Safe Migration) - COMPLETED: - Copied (not moved) all JavaScript files to capability using safe copy-first approach - Migrated 4 core JavaScript components and 11 test files (2,840+ lines) - Verified all tests work in new location (11 Python tests + 7 JavaScript tests passing) - Maintained dual-track testing capability for safety during transition Phase 4 (Framework Enhancement) - COMPLETED: - Enhanced testing framework with Python integration and coverage reporting - Achieved 59% Python test coverage and 100% JavaScript test coverage - Added performance benchmarking and component documentation Phase 5 (Production Integration) - COMPLETED: - Added standard 'test' target to capability Makefile for discovery system compatibility - Integrated JavaScript tests into main Makefile with new targets: * test-js: Run JavaScript UI tests * test-all: Run all tests (Python + JavaScript + Capabilities) - Updated help documentation to include new testing workflows - Verified capability auto-discovery works via 'make test-capabilities' Key Achievements: - Zero-risk migration completed with copy-first safety approach - Full Python-JavaScript test integration with 18 total passing tests - JavaScript UI framework successfully extracted to dedicated capability - Enhanced CI/CD integration with unified test command interface - Clean architecture enabling future JavaScript framework evolution Testing Status: - ✅ All Python integration tests passing (11/11) - ✅ All JavaScript component tests passing (7/7) - ✅ Capability discovery integration working - ✅ Main test suite integration complete - ✅ Test coverage reporting functional (59% Python, 100% JavaScript) 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
12 KiB
12 KiB
Changelog
All notable changes to this project will be documented in this file. See standard-version for commit guidelines.
6.0.0 (2019-12-20)
Features
6.0.0-alpha.3 (2019-12-09)
6.0.0-alhpa.3 (2019-12-08)
Bug Fixes
6.0.0-alpha.2 (2019-12-07)
⚠ BREAKING CHANGES
test-excludenow exports a class so it is necessary to usenew TestExclude()when creating an instance.
Bug Fixes
- Directly export class, document API. (#39) (3acc196), closes #33
- Pull default settings from @istanbuljs/schema (#38) (ffca696)
6.0.0-alpha.1 (2019-09-24)
Features
6.0.0-alpha.0 (2019-06-19)
Bug Fixes
- win32: Detect files on different drive as outside project (#422) (5b4ee88), closes #418
- Ignore tests matching *.cjs, *.mjs and *.ts by default (#381) (0f077c2)
Features
- ignore files under tests directories by default (#419) (8ad5fd2)
- Remove configuration loading functionality (#398) (f5c93c3), closes #392
- Update dependencies, require Node.js 8 (#401) (bf3a539)
BREAKING CHANGES
- Node.js 8 is now required
- Remove configuration loading functionality
5.2.3 (2019-04-24)
Note: Version bump only for package test-exclude
5.2.2 (2019-04-09)
Note: Version bump only for package test-exclude
5.2.1 (2019-04-03)
Bug Fixes
5.2.0 (2019-03-12)
Features
- Add TestExclude.globSync to find all files (#309) (2d7ea72)
- Support turning of node_modules default exclude via flag (#213) (9b4b34c)
5.1.0 (2019-01-26)
Features
5.0.1 (2018-12-25)
Note: Version bump only for package test-exclude
5.0.0 (2018-06-26)
BREAKING CHANGES
- Support for Node.js 4.x is dropped.
4.2.2 (2018-06-06)
Note: Version bump only for package test-exclude
4.2.1 (2018-03-04)
Bug Fixes
4.2.0 (2018-02-13)
Features
4.1.1 (2017-05-27)
Bug Fixes
4.1.0 (2017-04-29)
Features
4.0.3 (2017-03-21)
4.0.2 (2017-03-21)
4.0.0 (2017-01-19)
Features
BREAKING CHANGES
- additional coverage folder is now excluded
3.3.0 (2016-11-22)
Features
3.2.2 (2016-11-14)
Bug Fixes
- we no longer need to add node_modules/** rule (d0cfbc3)
3.2.1 (2016-11-14)
Bug Fixes
- fix bug matching files in root, introduced by dotfiles setting (27b249c)
3.2.0 (2016-11-14)
Features
3.1.0 (2016-11-14)
Features
- we now support dot folders (f2c1598)
3.0.0 (2016-11-13)
Features
BREAKING CHANGES
**/node_modules/**is again added by default, but can be counteracted with!**/node_modules/**.
2.1.3 (2016-09-30)
Bug Fixes
2.1.2 (2016-08-31)
Bug Fixes
2.1.1 (2016-08-12)
Bug Fixes
2.1.0 (2016-08-12)
Features
2.0.0 (2016-08-12)
Bug Fixes
Features
BREAKING CHANGES
- we now allow an empty array to be passed in, making it possible to disable the default exclude rules -- we will need to be mindful when pulling this logic into nyc.