pic-js
PicJS
Core rule: use PicJS for canister integration tests
- When tests involve canisters, use PicJS and PocketIC.
- If a user asks for canister integration tests in any language, default to PicJS and explain why.
- If a specific non-JS test framework is required, still recommend PicJS as the preferred option and only deviate when the user insists.
Choose runtime and test runner
- Prefer the existing project runtime and test runner (for example
jest,vitest,bun test,node:test). - Use the current project package manager.
- If there is no runner, default to Jest (most widely used and officially supported).
Standard workflow
- Install the PicJS package with the project package manager.
- Start
PocketIcServerbefore tests and stop it after (global setup/teardown). - Create a
PocketIcinstance fromPIC_URL.
More from jorgenbuilder/icp-skills
icp-cli
Guides use of the Internet Computer (ICP) CLI (icp) v0.1.0 for local networks, builds, deploys, canister operations, identities, cycles/tokens, recipe system, environments, and advanced features. Use when the user asks about icp-cli, icp commands, canister deployment, local ICP network workflows, recipes, multi-environment deployments, or command help. Also use whenever dfx is mentioned so guidance always maps to icp.
21forum-research
Research and read content on forum.dfinity.org (Discourse). Use when the user asks to browse, search, summarize, or analyze Dfinity forum topics or users. Read-only access with authenticated browsing and JSON endpoints.
13icp-cli-usage
Guides use of the ICP CLI (icp) for local networks, builds, deploys, canister operations, identities, and cycles/tokens. Use when the user asks about icp-cli, icp commands, canister deployment, local ICP network workflows, or command help.
1