mirror of
https://github.com/kuhyx/testsAndMisc.git
synced 2026-11-10 20:27:02 +01:00
check_file_length.sh required a dot in the filename, so every
extensionless executable was silently uncapped. is_source_file() now
reads the first two bytes and accepts a shebang, which catches real
scripts while still skipping data files like i3/config.
That immediately surfaced boot_recovery/boot-repair at 756 lines --
three times the largest capped shell file in the repo, uncapped purely
because its name has no dot in it. Split along its own section markers
into lib/{discovery,repair_fs,repair_kernel,modes}.sh, leaving the entry
script at 218.
The report block stays inline on purpose. It is top-level code with exit
calls rather than function definitions, and sourcing it changed control
flow: 30 of 42 tests failed. That is recorded in the lib headers so the
next reader does not retry it.
No vmbox pass for this one, deliberately. boot-repair is UEFI/ESP tooling
and the guest is BIOS/GRUB, so a sandbox green would be actively
misleading -- the vmbox skill says so itself. The evidence is the fixture
suite, which drives the real script against synthetic root trees: 42
passed before, 42 passed after.
verify_shell_split.sh reports 31 of 32 functions byte-identical. The one
difference is clean_shadow_files, where quoting $ESP_MOUNTPOINT fixed a
genuine SC2086 that only became visible once the function left the
monolith -- shellcheck could no longer see the readonly declaration and
stopped assuming the expansion was safe.
lib/tests/run_all.sh delegates to that same suite rather than standing up
a second, weaker harness: these libraries need the entry script's strict
mode and globals, so testing them in isolation would test a fiction.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01PJrqKERAo5QUeEHWS5Asgp
26 lines
1.0 KiB
Bash
Executable File
26 lines
1.0 KiB
Bash
Executable File
#!/usr/bin/env bash
|
|
# Runs the suite that covers this directory's libraries.
|
|
#
|
|
# The libraries here are sourced by ../../boot-repair and depend on its strict
|
|
# mode, its $ROOT/$MODE globals and its output helpers, so they cannot be
|
|
# exercised in isolation without reimplementing all of that. The real suite
|
|
# drives the entry script against throwaway fixture root trees, which executes
|
|
# every one of them end to end -- that is the honest test, so this runner
|
|
# delegates to it rather than standing up a second, weaker harness.
|
|
#
|
|
# This file's existence is also what meta/scripts/check_shell_coverage.sh
|
|
# checks: is_covered() looks for tests/run_all.sh beside the libs and nothing
|
|
# more, so a stub here would mark them covered while testing nothing.
|
|
set -euo pipefail
|
|
|
|
HERE="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
|
readonly SUITE="${HERE}/../../tests/test_boot_repair.sh"
|
|
|
|
[[ -x "$SUITE" ]] || {
|
|
printf 'boot_recovery lib tests: %s is missing or not executable\n' "$SUITE" >&2
|
|
exit 1
|
|
}
|
|
|
|
printf '\n=== %s ===\n' "$(basename "$SUITE")"
|
|
exec "$SUITE"
|