assertions: Test failure output before quiet eval
assertions: Test failure output before quiet eval

Fixes two issues with the `expect_success` and `expect_failure` test
helpers. First, the `eval $assertion || :` line would produce output
that would make the failure messages from these assertion functions hard
to read. The fix was just to redirect output to `/dev/null`:

  eval $assertion &>/dev/null || :

Second, while writing `assert_file_equals`, an assertion kept failing
for mysterious reasons, until I narrowed down that the above `eval` in
`expect_failure` was causing `assert_file_equals` to update the Bats
`$output` variable before the first call to `check_expected_output`. The
fix was to call `check_expected_output` before this line.

mbland/go-script-bash