---
- test: "npm unpublish"
description: "match npm unpublish"
expect_ids: ["npm:unpublish"]
- test: "npm unpublish my-package"
description: "match npm unpublish with package name"
expect_ids: ["npm:unpublish"]
- test: "npm unpublish my-package@1.0.0"
description: "match npm unpublish with package@version"
expect_ids: ["npm:unpublish"]
- test: "npm unpublish --force"
description: "match npm unpublish with --force"
expect_ids: ["npm:unpublish"]
- test: "npm unpublish my-package"
description: "match npm unpublish with extra spaces"
expect_ids: ["npm:unpublish"]
- test: "npm unpublishh"
description: "negative: typo should not match"
expect_ids: []
- test: "npm publish"
description: "negative: publish should not match unpublish"
expect_ids: []
- test: "npm install"
description: "negative: install should not match"
expect_ids: []
- test: "npm list"
description: "negative: list should not match"
expect_ids: []
- test: "pnpm unpublish my-package"
description: "negative: pnpm should not match npm:unpublish (word boundary)"
expect_ids: ["npm:pnpm_unpublish"]
- test: "sudo npm unpublish my-package"
description: "match npm unpublish with sudo prefix"
expect_ids: ["npm:unpublish"]
- test: "echo yes | npm unpublish my-package"
description: "match npm unpublish after pipe with spaces"
expect_ids: ["npm:unpublish"]
- test: "npm unpublish"
description: "match npm unpublish at end of string (boundary check)"
expect_ids: ["npm:unpublish"]
- test: "npm deprecate my-package 'this package is deprecated'"
description: "match npm deprecate with message"
expect_ids: ["npm:deprecate"]
- test: "npm deprecate my-package@1.x 'use v2 instead'"
description: "match npm deprecate with version range"
expect_ids: ["npm:deprecate"]
- test: "npm deprecate my-package 'message'"
description: "match npm deprecate with extra spaces"
expect_ids: ["npm:deprecate"]
- test: "npm info my-package"
description: "negative: info should not match"
expect_ids: []
- test: "npm deprecate"
description: "negative: npm deprecate with no trailing content should not match (regex requires trailing \\s+)"
expect_ids: []
- test: "pnpm deprecate my-package 'old'"
description: "negative: pnpm deprecate should not match npm:deprecate"
expect_ids: []
- test: "sudo npm deprecate my-package 'deprecated'"
description: "match npm deprecate with sudo prefix"
expect_ids: ["npm:deprecate"]
- test: "yarn npm unpublish"
description: "match yarn npm unpublish (also matches npm:unpublish as substring)"
expect_ids: ["npm:unpublish", "npm:yarn_unpublish"]
- test: "yarn npm unpublish my-package"
description: "match yarn npm unpublish with package"
expect_ids: ["npm:unpublish", "npm:yarn_unpublish"]
- test: "yarn npm unpublish my-package --force"
description: "match yarn npm unpublish with --force"
expect_ids: ["npm:unpublish", "npm:yarn_unpublish"]
- test: "yarn npm unpublish"
description: "match yarn npm unpublish with extra spaces"
expect_ids: ["npm:unpublish", "npm:yarn_unpublish"]
- test: "yarn npm publish"
description: "negative: yarn npm publish should not match"
expect_ids: []
- test: "yarn install"
description: "negative: yarn install should not match"
expect_ids: []
- test: "yarn npm unpublishh"
description: "negative: typo unpublishh should not match yarn_unpublish"
expect_ids: []
- test: "yarn npm unpublish my-package"
description: "match yarn npm unpublish with extra spaces and package"
expect_ids: ["npm:unpublish", "npm:yarn_unpublish"]
- test: "yarn npm info my-package"
description: "negative: yarn npm info should not match"
expect_ids: []
- test: "pnpm unpublish"
description: "match pnpm unpublish"
expect_ids: ["npm:pnpm_unpublish"]
- test: "pnpm unpublish my-package"
description: "match pnpm unpublish with package"
expect_ids: ["npm:pnpm_unpublish"]
- test: "pnpm unpublish my-package@1.0.0 --force"
description: "match pnpm unpublish with version and --force"
expect_ids: ["npm:pnpm_unpublish"]
- test: "pnpm unpublish"
description: "match pnpm unpublish with extra spaces"
expect_ids: ["npm:pnpm_unpublish"]
- test: "pnpm publish"
description: "negative: pnpm publish should not match"
expect_ids: []
- test: "pnpm install"
description: "negative: pnpm install should not match"
expect_ids: []
- test: "pnpm unpublishh"
description: "negative: typo unpublishh should not match pnpm_unpublish"
expect_ids: []
- test: "sudo pnpm unpublish my-package"
description: "match pnpm unpublish with sudo prefix (no start anchor in regex)"
expect_ids: ["npm:pnpm_unpublish"]
- test: "npnpm unpublish"
description: "negative: npnpm should not match pnpm_unpublish (word boundary via (^|\\s))"
expect_ids: []