2.2 KiB
| id | ticket | title | status | created | completed | ref_decisions | tags | ||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| PLN-0108 | real-render-worker-establishment | Migrate Tests to TestPlatform | done | 2026-06-06 |
|
|
Objective
Replace remaining test dependence on Hardware::new() and HardwareBridge with TestPlatform or narrower facade fixtures.
Background
DEC-0032 requires tests that need a full local platform fixture to use TestPlatform, not hidden HardwareBridge compatibility.
Scope
Included
- VM runtime tests.
- Firmware tests.
- Driver integration tests that still use monolithic hardware only as fixture.
- Host debugger tests where applicable.
Excluded
- Do not remove production bridge until tests are migrated.
- Do not change behavior under test.
Execution Steps
Step 1 - Inventory test dependencies
What: Find all direct Hardware::new() and HardwareBridge test uses.
How: Use rg and classify by domain.
File(s): test modules across crates/console and crates/host.
Step 2 - Migrate full-platform tests
What: Replace Hardware::new() with TestPlatform.
How: Use explicit facade accessors in assertions.
File(s): crates/console/prometeu-system/src/services/vm_runtime/tests*.rs, firmware tests.
Step 3 - Migrate narrow tests
What: Replace full platform with narrower fixtures where only one domain is under test. How: Use render/composer/audio/input/asset fixtures directly. File(s): driver and runtime test modules.
Test Requirements
Unit Tests
- All migrated tests pass.
Integration Tests
cargo test --workspaceor relevant workspace subset if full workspace is too broad.
Manual Verification
rg "Hardware::new\\(|HardwareBridge" crates --glob '*test*'shows no test dependency except tests explicitly covering legacy removal.
Acceptance Criteria
TestPlatformis the default full platform fixture.- Tests no longer preserve
HardwareBridgeby habit. - Narrow tests use narrower fixtures.
Dependencies
PLN-0103.PLN-0107.
Risks
- Large mechanical changes can hide behavior regressions. Keep commits grouped by test domain.