--- id: PLN-0108 ticket: real-render-worker-establishment title: Migrate Tests to TestPlatform status: done created: 2026-06-06 completed: ref_decisions: [DEC-0032] tags: [tests, platform, fixtures] --- ## 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 --workspace` or 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 - [ ] `TestPlatform` is the default full platform fixture. - [ ] Tests no longer preserve `HardwareBridge` by 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.