unit

Your tests, scoped to the files that changed.

Reference

Runs
commands.test_scoped
Ships as
on, and stops the run
Needs
a test command that accepts file paths

How it works

Runs commands.test_scoped with the changed files substituted for {files}, so a run does not wait on your whole suite.

Deleted files are dropped from that list and so is anything under paths.ignore. If nothing is left to pass in, the check reports that it did not run rather than passing on an empty list.