return;
if (!state.nr_good && !state.nr_bad)
- bisect_log_printf(_("status: waiting for both good and bad commits\n"));
+ bisect_log_printf(_("status: waiting for both '%s' and '%s' commits\n"),
+ terms->term_good, terms->term_bad);
else if (state.nr_good)
- bisect_log_printf(Q_("status: waiting for bad commit, %d good commit known\n",
- "status: waiting for bad commit, %d good commits known\n",
- state.nr_good), state.nr_good);
+ bisect_log_printf(Q_("status: waiting for '%s' commit, %d '%s' commit known\n",
+ "status: waiting for '%s' commit, %d '%s' commits known\n",
+ state.nr_good),
+ terms->term_bad, state.nr_good, terms->term_good);
else
- bisect_log_printf(_("status: waiting for good commit(s), bad commit known\n"));
+ bisect_log_printf(_("status: waiting for '%s' commit(s), '%s' commit known\n"),
+ terms->term_good, terms->term_bad);
}
static int bisect_next_check(const struct bisect_terms *terms,
int rc = verify_good(terms, command.buf);
is_first_run = 0;
if (rc < 0 || 128 <= rc) {
- error(_("unable to verify %s on good"
- " revision"), command.buf);
+ error(_("unable to verify %s on %s revision"),
+ command.buf, terms->term_good);
res = BISECT_FAILED;
break;
}
if (rc == res) {
- error(_("bogus exit code %d for good revision"),
- rc);
+ error(_("bogus exit code %d for %s revision"),
+ rc, terms->term_good);
res = BISECT_FAILED;
break;
}
puts(_("bisect run success"));
res = BISECT_OK;
} else if (res == BISECT_INTERNAL_SUCCESS_1ST_BAD_FOUND) {
- puts(_("bisect found first bad commit"));
+ printf(_("bisect found first %s commit\n"), terms->term_bad);
res = BISECT_OK;
} else if (res) {
error(_("bisect run failed: 'git bisect %s'"
test_expect_success 'bisect start with one term1 and term2' '
git bisect reset &&
- git bisect start --term-old term2 --term-new term1 &&
- git bisect term2 $HASH1 &&
+ git bisect start --term-old term2 --term-new term1 >bisect_result &&
+ test_grep "status: waiting for both '\''term2'\'' and '\''term1'\'' commits" bisect_result &&
+ git bisect term2 $HASH1 >bisect_result &&
+ test_grep "status: waiting for '\''term1'\'' commit, 1 '\''term2'\'' commit known" bisect_result &&
git bisect term1 $HASH4 &&
git bisect term1 &&
git bisect term1 >bisect_result &&
- grep "$HASH2 is the first term1 commit" bisect_result &&
+ test_grep "$HASH2 is the first term1 commit" bisect_result &&
git bisect log >log_to_replay.txt &&
git bisect reset
'
git bisect reset
'
+test_expect_success 'bisect run term1 term2' '
+ git bisect reset &&
+ git bisect start --term-new term1 --term-old term2 $HASH4 $HASH1 &&
+ git bisect term1 &&
+ git bisect run false >bisect_result &&
+ test_grep "bisect found first term1 commit" bisect_result &&
+ git bisect log >log_to_replay.txt &&
+ git bisect reset
+'
+
test_expect_success 'bisect start term1 term2' '
git bisect reset &&
git bisect start --term-new term1 --term-old term2 $HASH4 $HASH1 &&
test_expect_success 'bisect state output with multiple good commits' '
git bisect reset &&
git bisect start >output &&
- grep "waiting for both good and bad commits" output &&
+ grep "waiting for both '\''good'\'' and '\''bad'\'' commits" output &&
git bisect log >output &&
- grep "waiting for both good and bad commits" output &&
+ grep "waiting for both '\''good'\'' and '\''bad'\'' commits" output &&
git bisect good "$HASH1" >output &&
- grep "waiting for bad commit, 1 good commit known" output &&
+ grep "waiting for '\''bad'\'' commit, 1 '\''good'\'' commit known" output &&
git bisect log >output &&
- grep "waiting for bad commit, 1 good commit known" output &&
+ grep "waiting for '\''bad'\'' commit, 1 '\''good'\'' commit known" output &&
git bisect good "$HASH2" >output &&
- grep "waiting for bad commit, 2 good commits known" output &&
+ grep "waiting for '\''bad'\'' commit, 2 '\''good'\'' commits known" output &&
git bisect log >output &&
- grep "waiting for bad commit, 2 good commits known" output
+ grep "waiting for '\''bad'\'' commit, 2 '\''good'\'' commits known" output
'
test_expect_success 'bisect state output with bad commit' '
git bisect reset &&
git bisect start >output &&
- grep "waiting for both good and bad commits" output &&
+ grep "waiting for both '\''good'\'' and '\''bad'\'' commits" output &&
git bisect log >output &&
- grep "waiting for both good and bad commits" output &&
+ grep "waiting for both '\''good'\'' and '\''bad'\'' commits" output &&
git bisect bad "$HASH4" >output &&
- grep -F "waiting for good commit(s), bad commit known" output &&
+ grep -F "waiting for '\''good'\'' commit(s), '\''bad'\'' commit known" output &&
git bisect log >output &&
- grep -F "waiting for good commit(s), bad commit known" output
+ grep -F "waiting for '\''good'\'' commit(s), '\''bad'\'' commit known" output
'
test_expect_success 'verify correct error message' '