Files
openclaw/qa/scenarios/plugins/plugin-testing-harness-contracts.yaml
Vincent Koc 84d9e93dbb chore(qa): cover plugin testing harness contracts (#118933)
* test(qa): cover plugin testing harness contracts

* test(qa): narrow plugin harness tool factory
2026-08-04 09:07:27 +08:00

30 lines
1.3 KiB
YAML

title: Plugin testing harness contracts
scenario:
id: plugin-testing-harness-contracts
surface: plugins
category: plugins.testing-plugins
coverage:
primary:
- plugins.test-fixtures
- plugins.local-test-environment
- plugins.harness-contracts-tools
- plugins.unit-and-integration-scaffolds
objective: Verify the repo-local plugin test helpers provide isolated state, typed fixtures, real registry registration, tool execution, and contract diagnostics.
successCriteria:
- The temporary-home helper creates isolated OpenClaw state and restores the caller environment.
- Typed fixture cases drive an actual tool registered through the plugin registry harness.
- A virtual plugin with a declared tools contract registers and executes its tool.
- A virtual plugin without a tools contract records the canonical diagnostic and registers no tool.
docsRefs:
- docs/plugins/sdk-testing.md
codeRefs:
- src/plugin-sdk/plugin-test-contracts.ts
- src/plugin-sdk/test-env.ts
- src/plugin-sdk/test-fixtures.ts
- src/plugins/contracts/plugin-testing-harness.contract.test.ts
execution:
kind: vitest
path: src/plugins/contracts/plugin-testing-harness.contract.test.ts
summary: Run the repo-local plugin harness across isolated state, typed fixtures, tool execution, and contract rejection.