test: add BATS test suite with 50 tests

Covers arg parsing, version comparison, audit phase (git config,
signing, SSH), apply phase (settings, SSH directives, url rewrite),
signing key detection (standard/custom/tilde/sk-preference),
allowed signers, -y mode, backup, and end-to-end idempotency.
All tests run in isolated HOME to avoid touching real config.

Closes: #6

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
Flo
2026-03-30 23:10:57 +02:00
parent da2ffea132
commit 5e8a34ef68
6 changed files with 705 additions and 0 deletions

9
.gitmodules vendored Normal file
View File

@@ -0,0 +1,9 @@
[submodule "test/libs/bats-core"]
path = test/libs/bats-core
url = https://github.com/bats-core/bats-core.git
[submodule "test/libs/bats-support"]
path = test/libs/bats-support
url = https://github.com/bats-core/bats-support.git
[submodule "test/libs/bats-assert"]
path = test/libs/bats-assert
url = https://github.com/bats-core/bats-assert.git