[PATCH] blame: Add tests for -L/start/,/end/
- From
Ævar Arnfjörð Bjarmason <avarab@gmail.com>
- Date
- Jul 16, 2010, 15:35 UTC
- Message-ID
- <1279294507-9238-1-git-send-email-avarab@gmail.com>
git-pickaxe (later git-blame) gained support for the -L/start/,/end/ form in 2006 (931233bc66 by Junio C Hamano), but nothing was added to test this functionality. Change that by adding more -L tests to t8003-blame.sh.
Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com> --- t/t8003-blame.sh | 53 +++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 53 insertions(+), 0 deletions(-)
diff --git a/t/t8003-blame.sh b/t/t8003-blame.sh index 230143c..2a3e169 100755 --- a/t/t8003-blame.sh +++ b/t/t8003-blame.sh @@ -175,6 +175,59 @@ test_expect_success 'blame -L with invalid end' ' grep "has only 2 lines" errors ' +for comma in '' ',' +do + # The comma in -L/regex/, is optional + test_expect_success "blame -L/start/$comma" " + git blame -L'/[E]F/$comma' cow >current 2>errors && + ! test -s errors && + head -n 1 current | grep DEF && + tail -n 1 current | grep GHIJK + " +done + +test_expect_success 'blame -L/start/,/end/' ' + git blame -L"/[E]F/,/^X/" cow >current 2>errors && + ! test -s errors && + head -n 1 current | grep DEF && + tail -n 1 current | grep XXXX +' + +test_expect_success 'blame -L/start/,INT' ' + git blame -L"/[C]/,2" cow >current 2>errors && + ! test -s errors && + head -n 1 current | grep ABC && + tail -n 1 current | grep DEF +' + +test_expect_success 'blame -LINT,/end/' ' + git blame -L3,/GH/ cow >current 2>errors && + ! test -s errors && + head -n 1 current | grep XXXX && + tail -n 1 current | grep GHIJK +' + +test_expect_success 'blame -L,/end/' ' + git blame -L",/^X/" cow >current 2>errors && + ! test -s errors && + head -n 1 current | grep ABC && + tail -n 1 current | grep XXXX +' + +test_expect_success 'blame -L/no match/' ' + ! git blame -L/hlagh/ cow >current 2>errors && + grep hlagh errors && + ! test -s current +' + +test_expect_success 'blame -L/invalid regex/' ' + # At least GNU, Solaris and FreeBSD (and by extension, Mac OS X) + # complain about this + ! git blame -L/[b-a]/ cow >current 2>errors && + grep b-a errors && + ! test -s current +' + test_expect_success 'indent of line numbers, nine lines' ' git blame nine_lines >actual && test $(grep -c " " actual) = 0
-- 1.7.0.4