mirror of
https://oauth2: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@github.com/m1ngsama/TNT.git
synced 2026-06-26 05:44:38 +08:00
Smoke-test installed log maintenance modes
This commit is contained in:
parent
d22d5160d7
commit
b71aa89a45
2 changed files with 32 additions and 0 deletions
|
|
@ -116,6 +116,8 @@
|
|||
- Added `scripts/package_debian_source.sh` and `make debian-source-package`
|
||||
to assemble Debian/Ubuntu source-package trees from the current project
|
||||
without publishing or uploading anything.
|
||||
- Release preflight now smoke-tests the staged installed `tnt` binary's
|
||||
`--log-check` and `--log-recover` modes, catching package artifact drift.
|
||||
- The i18n helper now supports language-keyed string initializers through
|
||||
`I18N_STRING_MAP`, so future languages can be added incrementally without
|
||||
changing every existing two-language string initializer.
|
||||
|
|
|
|||
|
|
@ -158,6 +158,36 @@ make DESTDIR="$tmpdir" PREFIX=/usr install-systemd
|
|||
grep -q "^ExecStart=/usr/bin/tnt$" "$tmpdir/usr/lib/systemd/system/tnt.service" ||
|
||||
fail "systemd unit ExecStart does not match PREFIX=/usr install path"
|
||||
|
||||
step "checking installed log maintenance modes"
|
||||
log_smoke="$tmpdir/messages.log"
|
||||
recovered_log="$tmpdir/recovered.messages.log"
|
||||
recover_report="$tmpdir/recovered.report"
|
||||
smoke_ts=$(date -u +%Y-%m-%dT%H:%M:%SZ)
|
||||
cat > "$log_smoke" <<EOF
|
||||
$smoke_ts|alice|one
|
||||
$smoke_ts|mallory|extra|pipe
|
||||
$smoke_ts|bob|two
|
||||
EOF
|
||||
if "$tmpdir/usr/bin/tnt" --log-check "$log_smoke" >"$tmpdir/log-check.out" 2>&1; then
|
||||
fail "installed tnt --log-check should report invalid records"
|
||||
fi
|
||||
grep -q '^valid_records 2$' "$tmpdir/log-check.out" ||
|
||||
fail "installed tnt --log-check did not report valid records"
|
||||
grep -q '^invalid_records 1$' "$tmpdir/log-check.out" ||
|
||||
fail "installed tnt --log-check did not report invalid records"
|
||||
if "$tmpdir/usr/bin/tnt" --log-recover "$log_smoke" \
|
||||
>"$recovered_log" 2>"$recover_report"; then
|
||||
fail "installed tnt --log-recover should report invalid records"
|
||||
fi
|
||||
grep -q "$smoke_ts|alice|one" "$recovered_log" ||
|
||||
fail "installed tnt --log-recover missed alice record"
|
||||
grep -q "$smoke_ts|bob|two" "$recovered_log" ||
|
||||
fail "installed tnt --log-recover missed bob record"
|
||||
! grep -q 'mallory' "$recovered_log" ||
|
||||
fail "installed tnt --log-recover preserved invalid record"
|
||||
grep -q '^invalid_records 1$' "$recover_report" ||
|
||||
fail "installed tnt --log-recover did not report invalid records"
|
||||
|
||||
step "checking installer syntax"
|
||||
sh -n install.sh
|
||||
|
||||
|
|
|
|||
Loading…
Reference in a new issue