Hans Jerry Illikainen <[email protected]> writes:
> +test_expect_success GPG 'pull unsigned commit with --verify-signatures' '
> + test_must_fail git pull --ff-only --verify-signatures unsigned
> 2>pullerror &&
> + test_i18ngrep "does not have a GPG signature" pullerror
> +'
Note that this is without "when-finished"; if 'git pull' got broken
and does not fail as expected, the next test will start from a state
that it is not expecting. Same for the ones that run 'git pull'
under test_must_fail.
Interestingly, the tests that do expect 'git pull' to succeed
protect themselves with "when-finished" mechanism correctly [*1*],
like so:
> +test_expect_success GPG 'pull signed commit with --verify-signatures' '
> + test_when_finished "git checkout initial" &&
> + git pull --verify-signatures signed >pulloutput &&
> + test_i18ngrep "has a good GPG signature" pulloutput
> +'
> +
Other than that, looked nicely done. Thanks.
[Footnote]
*1* I am guessing that the branches that are being pulled in tests
are designed in such a way to never produce merge conflicts, and
failures are possible only due to signature verification. If
that were not the case, "when-finished" would want to do a hard
reset before checking out the initial to go back to a known
state.