test-neu

Guides writing and modifying Python test files with counter-proof requirements and naming conventions.

Updated Aug 22, 2026
One-click install
npx skills add https://github.com/Bascht74/videopodcast-magic --skill test-neu-bascht74
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: test-neu
Source: https://github.com/Bascht74/videopodcast-magic/tree/main/.claude/skills/test-neu
Command: npx skills add https://github.com/Bascht74/videopodcast-magic --skill test-neu-bascht74

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve? Changing or adding tests in the tests/*_test.py suite without breaking its conventions: where a check belongs, how it is named, how its docstring is written, how failures report numbers, and how every judgement is proven to actually go red when the program is wrong. ## Core Features & Use Cases - Placement and naming rules: Decides whether a check joins an existing test file or needs a new one, enforces the twelve fixed prefixes (files_, sound_, time_, voice_, cut_, project_, auphonic_, window_, table_, run_, text_, source_), and requires claim-based names. - Judgement quality checks: Defines the canonical check pattern, forbids bare asserts, requires numeric evidence in FAIL lines, and catalogs blind judgements (A against A, repeated guards, self-repairing faults) with worked cases in cases.md. - Operational discipline: Covers condition-based waiting, visible skipping with a ratchet, cleanup via tempfile.mkdtemp(), clone-based verification with git init and git add -A, and the counter-proof register in tests/state/counterproof. - Use Case: When adding a section to table_no_place_not_wide_test.py or creating a new sound_*_test.py, follow the twelve closing questions to ensure the test is provable, registered, and green on the builder. ## Quick Start Use the test-neu skill to add a check verifying that the camera cut respects the minimum shot length in the existing cut test file.

Frequently Asked Questions about test-neu

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I add a new test to an existing test suite?▼

A section inside an existing test file is the rule; a new file is the exception. The check may join only if it shares the same claim, the same ground, and the same name truthfulness. One no means a new file, which then owes a row in the tests table written by overview.py.

How should Python test files be named in this suite?▼

Use the pattern <subject>_<claim>_test.py, at most 24 characters before _test.py, lowercase English, starting with one of twelve fixed prefixes like files_, sound_, or table_. The prefix says where the fault would sit, and the second half is a claim, not a thing.

Why should tests avoid bare assert statements?▼

A bare assert throws a traceback instead of a readable line, stops at the first failure, carries no numbers, and is not counted. Every verdict goes through the canonical check function, which prints a named line, collects failures, and feeds the closing summary.

What is a counter-proof for a test check?▼

A counter-proof shows the check goes red when the thing it guards is actually broken, using a deliberately broken copy of the program. Each check needs its own proof recorded in tests/state/counterproof, keyed by the check's first-argument wording.

When is a fixed sleep allowed in a test?▼

Only while the test is being written, never in the finished version. Waiting must be on a condition with a short interval and a generous upper bound, measuring standstill rather than elapsed time, and exhausted patience must end red with a line saying what never came.

Why does a test pass locally but fail on the CI builder?▼

Common causes are assuming the folder equals the repository, relying on gitignored working notes, or missing environment variables that run.sh sets like LANG, TMPDIR, and VPM_FIXTURES. Verify with a git archive clone including git init and git add -A, and always run through run.sh.