Skip to content
Agentmart
Submit a tool

legacy-tests

Add tests to untested or legacy code before changing it.

Skill by shankarr1503

IndexedMIT
Write a review

Install

Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.

npx agentmarket install skill/shankarr1503-legacy-tests

Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.

Get the weekly diff

The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.

We use your email only for this newsletter. Privacy

About

Add tests to untested or legacy code before changing it. Use when code has little or no test coverage, before refactoring or modifying risky old code, or when asked to "add tests" to existing behavior. Writes characterization tests that pin what the code does today.

Use cases: testing

No reviews yet. Installed it? Reviews come from verified installers only. How reviews work

Permissions

What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.

Tools
No tools found
Secrets
None asked for
Install scripts
None found

Network hosts it talks to 1

  • codeload.github.com · found in install command

Files it touches

  • ~/.claude/skills/legacy-tests

What's inside

Skill name
legacy-tests
Description
Add tests to untested or legacy code before changing it. Use when code has little or no test coverage, before refactoring or modifying risky old code, or when asked to "add tests" to existing behavior. Writes characterization tests that pin what the code does today.
License
MIT
Instructions
30 lines in SKILL.md · view on GitHub

Files (1)

  • SKILL.md

SKILL.md (first lines)

# Legacy tests

Legacy code is code without tests. Before changing it, capture what it does now — right or wrong — so any change in behavior is visible.

## 1. Pick the seam

- Identify the smallest unit you can call from a test with the behavior you need to protect: a function, a class, a CLI command, an HTTP endpoint.
- If nothing is callable in isolation, find a seam: a parameter you can pass, a dependency you can inject, a function you can extract _mechanically_ (no logic changes) to make it testable. Keep these enabling changes tiny and separate.
- Prefer testing at a higher level (endpoint, command) when internals are tangled; you can add finer tests later.

## 2. Characterize behavior

- Call the code with representative inputs and assert on the **actual** outputs you observe, including surprising ones. Name such tests clearly: `currently_returns_null_for_empty_input`.
- Cover: typical inputs, boundaries, invalid inputs, and error paths. Use real production-like examples (anonymised) when available.
- For outputs that are large or complex, snapshot/golden-file tests are acceptable — keep them readable and reviewed, and normalise volatile parts (timestamps, IDs, ordering).
- Pin external effects: what gets written, sent, or logged. Replace the network, clock and randomness with fakes at the boundary.

## 3. Check the tests can fail

Temporarily break the code (flip a condition, change a constant) and confirm a test fails. If nothing fails, the tests are not protecting that behavior. Revert the break.

## 4. Separate "is" from "should"

When you find behavior that looks like a bug, do **not** fix it in this step. Pin it, mark it (`// characterization: looks wrong, see issue`), and report it. Fixing it is a separate, deliberate behavior change with its own test.

## 5. Report

Which behaviors are now covered, how to run the tests, suspected bugs discovered, and what remains untested (and why — e.g. needs a real database).

From shankarr1503/omnistack, MIT.

More from shankarr1503/omnistack

Signals

Stars
0
Forks
0
Open issues
0
Last commit (this folder)
Oct 7, 2026 (22 days ago)

From GitHub (fetched Oct 24, 2026).

Details

License
MIT
First seen
Oct 24, 2026
Last checked
Oct 24, 2026

More from shankarr1503

Cite this page

legacy-tests skill. Agent Mart. https://agentmart.dev/skills/shankarr1503-legacy-tests (last updated 2026-10-24)