mirror of
https://github.com/go-task/task.git
synced 2026-07-10 04:22:03 +02:00
e3b6ed4a03c5f68c56f8d9eaa8ab176c1b64aca4
Follow cobra's testing philosophy: the completion protocol (candidates + directive) is business logic and belongs in Go, while the shell wrappers only need to be checked for how they interpret each directive. - Add completion/protocol_test.go: a table-driven black-box test that runs the real `task __complete` binary and asserts the offered values and the emitted directive. Unlike the in-process engine tests, it exercises the actual entrypoint dispatch, runComplete wiring and — crucially — the real flag set, so it catches drift between the completion enum/directive maps and the flag definitions. Runs on every OS, including Windows where the shell smokes don't. - Delete completion/tests/engine.sh (the protocol is now covered in Go) and drop it from run.sh. - Reduce the bash/zsh/fish/powershell smokes to directive routing only (files vs dirs vs no-files vs no-space), removing the task/alias/var assertions that the Go tests already own.
Task: The Modern Task Runner
A fast, cross-platform build tool inspired by Make, designed for modern workflows.
Installation • Getting Started • Docs • Twitter • Bluesky • Mastodon • Discord
Gold Sponsors
|
|
|
|
Community Sponsors
|
|
Languages
Go
85.2%
Vue
4.5%
Shell
4.4%
TypeScript
4.1%
PowerShell
1.3%
Other
0.5%