Brandon Casey <casey@xxxxxxxxxxxxxxx> writes: > On platforms with a broken iconv it may be necessary to skip the fourth > test in this script. Test four sets the i18n.commitencoding config variable. > If test four is skipped, then a later unset of the i18n.commitencoding > config variable will return a non-zero exit status and cause a test to fail. > So move the 'config --unset' into its own test function which allows it to > be skipped independently. I do not know if this is worth it, and I am reasonably sure this is not an optimal solution for this particular case. Many existing pieces in the test scripts, I even suspect majority of them, do depend on earlier piece in the sequence to succeed and try to build on top of the state they have left. In the ideal world, especially when the software is young and flaky, perhaps that should not be the case and having test pieces that are as independent as each other would be easier to fix many tests that do not pass, but these days we expect all tests to pass, so running tests has become like reading the error output from compilers --- very often, the first error is the only one that counts. Even though test-lib.sh does support skipping individual test pieces by adding t9301.12 to GIT_TEST_SKIP, it is not very useful in practice with the current set of tests, it would involve huge effort to make it reliably usable, and individual test pieces in the end result from such an effort will have to perform their own set-up from scratch, which would mean the test will take even longer to run, to catch occasional breakages. For this particular case, what we are interested in testing is not that "config --unset" exits with 0 status. We are however interested in making sure that i18n.commitencoding is not set when the body of #12 runs. So I think a more appropriate change would be something like this for this particular case. t/t9301-fast-export.sh | 4 +++- 1 files changed, 3 insertions(+), 1 deletions(-) diff --git c/t/t9301-fast-export.sh i/t/t9301-fast-export.sh index 3cb9f80..2ce2aff 100755 --- c/t/t9301-fast-export.sh +++ i/t/t9301-fast-export.sh @@ -190,7 +190,9 @@ export GIT_COMMITTER_NAME='C O Mitter' test_expect_success 'setup copies' ' - git config --unset i18n.commitencoding && + git config --unset i18n.commitencoding + + test -z $(git config i18n.commitencoding) && git checkout -b copy rein && git mv file file3 && git commit -m move1 && -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html