mcpbeat

Run Unit Tests

azure/run-unit-tests

Run unit tests for the Cosmos Explorer project. Use this skill when asked to run tests, check test results, or debug test failures.

637 tokens
context cost
the whole folder, loaded on every use
1
files
instructions only
0
copies elsewhere
how many repositories repackaged it
131
stars on the repo
on the repository, not the skill itself

Install

one command, takes just this skill from the repository
npx skills add https://github.com/Azure/cosmos-explorer --skill run-unit-tests

The instruction itself

7 sections, as written by the author

Test Skill

Use the following commands to run unit tests for the Cosmos Explorer project.

Pre-Test: Check Dependencies

Before running tests, check whether npm install needs to be run:

if [ ! -d node_modules ] || [ package.json -nt node_modules ] || [ package-lock.json -nt node_modules ]; then
  npm install
fi

On Windows PowerShell:

if (-not (Test-Path node_modules) -or
    (Get-Item package.json).LastWriteTime -gt (Get-Item node_modules).LastWriteTime -or
    (Get-Item package-lock.json).LastWriteTime -gt (Get-Item node_modules).LastWriteTime) {
    npm install
}

Always run this check before proceeding with any test command.

Run All Unit Tests

Run the full test suite with coverage:

npm test

This clears the coverage/ directory and runs Jest with coverage collection enabled.

Run a Single Test File

Run a specific test file without coverage (faster):

npm run test:file -- path/to/file.test.ts

Run Tests in Debug Mode

Run tests serially (useful for debugging flaky or interdependent tests):

npm run test:debug

Run Tests Matching a Pattern

Run only tests whose names match a pattern:

npx jest --coverage=false --testPathPattern="SomeComponent"

Guidelines

  • When asked to simply "run tests" or "test", run npm test for the full suite.
  • When asked to test a specific file or component, use npm run test:file -- <path>.
  • When debugging test failures, use npm run test:debug to run serially.
  • Unit test files live adjacent to source files (Foo.test.ts next to Foo.ts in src/).
  • Tests use Jest with jest-environment-jsdom.
  • Use @testing-library/react for new component tests. Do not use Enzyme for new tests.
  • Use Jest built-in mocking, not sinon.js.
  • Coverage thresholds are enforced globally: branches 25%, functions 24%, lines 28%, statements 28%.
  • If tests fail, read the error output carefully. Common issues include:
  • Snapshot mismatches: Review the diff. If the change is intentional, update snapshots with npx jest --updateSnapshot.
  • Mock issues: Ensure mocks are set up correctly and reset between tests.
  • Import errors: Check that module name mappings in jest.config.js are correct.
  • Type errors in tests: Run npm run compile to check for TypeScript issues.

How to use it

Copy the folder

Take azure/run-unit-tests from the repository into ~/.claude/skills for personal use, or into .claude/skills inside a project.

Check the name does not clash

The agent identifies a skill by the name field in its header. Two skills with the same name cannot sit side by side — one of them will be ignored.

Install what it needs

The instructions reference npm, npx. Without those the skill loads but fails at the first command.