diff options
Diffstat (limited to 'test/run-tests.sh')
| -rwxr-xr-x | test/run-tests.sh | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/test/run-tests.sh b/test/run-tests.sh index 1c75cd7..5830224 100755 --- a/test/run-tests.sh +++ b/test/run-tests.sh @@ -329,5 +329,23 @@ else bad "pruning kept the wrong ones" "newest backup was deleted" fi +# 25. The wrong-host message has to name the way out, or the laptop is simply stuck. +out=$("$BIN/publish-apk" /dev/null thing.apk --host definitely-not-this-host 2>&1); rc=$? +if [ $rc -eq 2 ] && printf '%s' "$out" | grep -q "PUBLISH_SSH"; then + ok "wrong-host error explains how to publish remotely" +else + bad "ssh hint" "rc=$rc out=$out" +fi + +# 26. PUBLISH_SSH must not become a way to write locally on the wrong host -- the whole point +# is that it sends the file to the real one. +out=$(PUBLISH_SSH="nobody@invalid.invalid" "$BIN/publish-apk" "$realapk" thing.apk \ + --host definitely-not-this-host --dir "$tmproot/should-not-be-touched" 2>&1); rc=$? +if [ $rc -ne 0 ] && [ ! -e "$tmproot/should-not-be-touched/thing.apk" ]; then + ok "remote publish never falls back to writing locally" +else + bad "remote fallback" "rc=$rc; local file created?" +fi + printf '\n=== summary: %d passed, %d failed ===\n' "$pass" "$fail" [ "$fail" -eq 0 ] |
