From: Adam Spiers <git@adamspiers.org>
To: git list <git@vger.kernel.org>
Cc: Junio C Hamano <gitster@pobox.com>, Jeff King <peff@peff.net>
Subject: [PATCH v2 6/6] Treat unexpectedly fixed known breakages more seriously
Date: Wed, 19 Sep 2012 18:15:15 +0100 [thread overview]
Message-ID: <1348074915-19985-7-git-send-email-git@adamspiers.org> (raw)
In-Reply-To: <1348074915-19985-1-git-send-email-git@adamspiers.org>
Change color of unexpectedly fixed known breakages to bold red. An
unexpectedly passing test indicates that the test code is somehow
broken or out of sync with the code it is testing. Either way this
is an error which is potentially as bad as a failing test, and as
such is no longer portrayed as a pass in the output.
Signed-off-by: Adam Spiers <git@adamspiers.org>
---
t/t0000-basic.sh | 29 +++++++++++++++++++++++------
t/test-lib.sh | 13 +++++++++----
2 files changed, 32 insertions(+), 10 deletions(-)
diff --git a/t/t0000-basic.sh b/t/t0000-basic.sh
index 644cc2c..459d0c7 100755
--- a/t/t0000-basic.sh
+++ b/t/t0000-basic.sh
@@ -148,13 +148,30 @@ test_expect_success 'pretend we have fixed a known breakage' "
test_done
EOF
check_sub_test_lib_test passing-todo <<-EOF
- > ok 1 - pretend we have fixed a known breakage # TODO known breakage
- > # fixed 1 known breakage(s)
- > # passed all 1 test(s)
+ > ok 1 - pretend we have fixed a known breakage # TODO known breakage vanished
+ > # 1 known breakage(s) vanished; please update test(s)
> 1..1
EOF
"
+test_expect_success 'pretend we have fixed one of two known breakages (run in sub test-lib)' "
+ run_sub_test_lib_test partially-passing-todos '2 TODO tests, one passing' <<-EOF &&
+ test_expect_failure 'pretend we have a known breakage' 'false'
+ test_expect_success 'pretend we have a passing test' 'true'
+ test_expect_failure 'pretend we have fixed another known breakage' 'true'
+ test_done
+ EOF
+ check_sub_test_lib_test partially-passing-todos <<-EOF
+ > not ok 1 - pretend we have a known breakage # TODO known breakage
+ > ok 2 - pretend we have a passing test
+ > ok 3 - pretend we have fixed another known breakage # TODO known breakage vanished
+ > # 1 known breakage(s) vanished; please update test(s)
+ > # still have 1 known breakage(s)
+ > # passed all remaining 1 test(s)
+ > 1..3
+ EOF
+"
+
test_expect_success 'pretend we have a pass, fail, and known breakage' "
run_sub_test_lib_test_expecting_failures mixed-results1 'mixed results #1' <<-EOF &&
test_expect_success 'passing test' 'true'
@@ -200,10 +217,10 @@ test_expect_success 'pretend we have a mix of all possible results' "
> # false
> not ok 8 - pretend we have a known breakage # TODO known breakage
> not ok 9 - pretend we have a known breakage # TODO known breakage
- > ok 10 - pretend we have fixed a known breakage # TODO known breakage
- > # fixed 1 known breakage(s)
+ > ok 10 - pretend we have fixed a known breakage # TODO known breakage vanished
+ > # 1 known breakage(s) vanished; please update test(s)
> # still have 2 known breakage(s)
- > # failed 3 among remaining 8 test(s)
+ > # failed 3 among remaining 7 test(s)
> 1..10
EOF
"
diff --git a/t/test-lib.sh b/t/test-lib.sh
index 7028ba8..b403e85 100755
--- a/t/test-lib.sh
+++ b/t/test-lib.sh
@@ -278,7 +278,7 @@ test_failure_ () {
test_known_broken_ok_ () {
test_fixed=$(($test_fixed+1))
- say_color "" "ok $test_count - $@ # TODO known breakage"
+ say_color error "ok $test_count - $@ # TODO known breakage vanished"
}
test_known_broken_failure_ () {
@@ -373,13 +373,18 @@ test_done () {
if test "$test_fixed" != 0
then
- say_color pass "# fixed $test_fixed known breakage(s)"
+ say_color error "# $test_fixed known breakage(s) vanished; please update test(s)"
fi
if test "$test_broken" != 0
then
say_color warn "# still have $test_broken known breakage(s)"
- msg="remaining $(($test_count-$test_broken)) test(s)"
+ fi
+ if test "$test_broken" != 0 || test "$test_fixed" != 0
+ then
+ test_remaining=$(( $test_count - $test_broken - $test_fixed ))
+ msg="remaining $test_remaining test(s)"
else
+ test_remaining=$test_count
msg="$test_count test(s)"
fi
case "$test_failure" in
@@ -393,7 +398,7 @@ test_done () {
if test $test_external_has_tap -eq 0
then
- if test $test_count -gt 0
+ if test $test_remaining -gt 0
then
say_color pass "# passed all $msg"
fi
--
1.7.12.147.g6d168f4
next prev parent reply other threads:[~2012-09-19 17:15 UTC|newest]
Thread overview: 37+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-09-17 11:50 [PATCH] Make test output coloring more intuitive Adam Spiers
2012-09-17 20:11 ` Jeff King
2012-09-18 21:21 ` Adam Spiers
2012-09-19 20:02 ` Stefano Lattarini
2012-09-19 20:12 ` Adam Spiers
2012-09-19 20:13 ` Jeff King
2012-09-19 20:24 ` [PATCH v4 3/6] Color skipped tests blue Adam Spiers
2012-09-20 5:48 ` Johannes Sixt
2012-09-20 9:04 ` Adam Spiers
2012-09-20 9:08 ` [PATCH v5 3/3] Color skipped tests bold blue Adam Spiers
2012-09-20 10:08 ` Stefano Lattarini
2012-09-20 16:20 ` Junio C Hamano
2012-09-21 6:13 ` [PATCH v4 3/6] Color skipped tests blue Jeff King
2012-11-11 2:04 ` Adam Spiers
2012-09-17 20:50 ` [PATCH] Make test output coloring more intuitive Junio C Hamano
2012-09-18 21:36 ` Adam Spiers
2012-09-18 21:59 ` Jeff King
2012-09-18 22:14 ` Adam Spiers
2012-09-19 17:15 ` [PATCH v2 0/6] make " Adam Spiers
2012-09-19 17:15 ` [PATCH v2 1/6] Change the color of individual known breakages Adam Spiers
2012-09-19 17:15 ` [PATCH v2 2/6] Make 'not ok $count - $message' consistent with 'ok $count - $message' Adam Spiers
2012-09-19 17:50 ` Jeff King
2012-09-19 23:39 ` Junio C Hamano
2012-09-19 23:45 ` Adam Spiers
2012-09-19 17:15 ` [PATCH v2 3/6] Color skipped tests the same as informational messages Adam Spiers
2012-09-19 17:15 ` [PATCH v2 4/6] Refactor mechanics of testing in a sub test-lib Adam Spiers
2012-09-19 17:56 ` Jeff King
2012-09-19 18:44 ` Adam Spiers
2012-09-19 18:49 ` [PATCH v3 " Adam Spiers
2012-09-19 18:49 ` [PATCH v3 5/6] Test the test framework more thoroughly Adam Spiers
2012-09-19 18:49 ` [PATCH v3 6/6] Treat unexpectedly fixed known breakages more seriously Adam Spiers
2012-09-20 21:13 ` [PATCH v3 4/6] Refactor mechanics of testing in a sub test-lib Junio C Hamano
2012-09-19 19:37 ` [PATCH v2 " Jeff King
2012-09-19 20:15 ` Adam Spiers
2012-09-19 17:15 ` [PATCH v2 5/6] Test the test framework more thoroughly Adam Spiers
2012-09-19 17:15 ` Adam Spiers [this message]
2012-09-19 18:05 ` [PATCH v2 0/6] make test output coloring more intuitive Jeff King
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1348074915-19985-7-git-send-email-git@adamspiers.org \
--to=git@adamspiers.org \
--cc=git@vger.kernel.org \
--cc=gitster@pobox.com \
--cc=peff@peff.net \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).