mirror of
https://github.com/zplug/zplug
synced 2026-03-07 14:36:22 +01:00
1.1 KiB
1.1 KiB
| description | paths | |
|---|---|---|
| Test framework conventions and patterns (Shove) |
|
Rules for test/
Framework
Tests use Shove, executed via make test.
File Layout
Test files mirror the base/ directory structure:
test/base/<category>/<module>.t
For example, base/core/tags.zsh is tested by test/base/core/tags.t.
Test Syntax
T_SUB "function_name_or_description" ((
# test body
t_is $actual $expected
))
T_SUB— define a test caset_is— assert equality (exit code or value)
Generating Tests
New test stubs can be generated with:
zsh misc/dev/make_tests.zsh
This scans base/ for function definitions and creates skeleton .t files.
Running Tests
make test # all tests
make test TEST_TARGET=test/base/core/tags.t # single file
Notes
test/all.tsourcesmisc/zshrcfor a full integration test. It has a known pre-existing failure due to job table exhaustion — this is not a regression indicator.- Individual module tests (e.g.,
test/base/base/base.t) are the reliable pass/fail signal.