From fc6fa0d0f38f4e5b47f260fe2755ba0d1b17ae53 Mon Sep 17 00:00:00 2001 From: Tay Ray Chuan Date: Thu, 27 May 2010 23:34:50 +0800 Subject: [PATCH] t7502-commit: add tests for summary output Signed-off-by: Tay Ray Chuan Signed-off-by: Junio C Hamano --- t/t7502-commit.sh | 43 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 43 insertions(+) diff --git a/t/t7502-commit.sh b/t/t7502-commit.sh index 844fb43c6..478b637b0 100755 --- a/t/t7502-commit.sh +++ b/t/t7502-commit.sh @@ -4,8 +4,51 @@ test_description='git commit porcelain-ish' . ./test-lib.sh +# Arguments: [] +check_summary_oneline() { + test_tick && + git commit -m "$2" | head -1 > act && + + # branch name + SUMMARY_PREFIX="$(git name-rev --name-only HEAD)" && + + # append the "special" prefix, like "root-commit", "detached HEAD" + if test -n "$1" + then + SUMMARY_PREFIX="$SUMMARY_PREFIX ($1)" + fi + + # abbrev SHA-1 + SUMMARY_POSTFIX="$(git log -1 --pretty='format:%h')" + echo "[$SUMMARY_PREFIX $SUMMARY_POSTFIX] $2" >exp && + + test_cmp exp act +} + +test_expect_success 'output summary format' ' + + echo new >file1 && + git add file1 && + check_summary_oneline "root-commit" "initial" && + + echo change >>file1 && + git add file1 && + check_summary_oneline "" "a change" +' + +output_tests_cleanup() { + # this is needed for "do not fire editor in the presence of conflicts" + git checkout master && + + # this is needed for the "partial removal" test to pass + git rm file1 && + git commit -m "cleanup" +} + test_expect_success 'the basics' ' + output_tests_cleanup && + echo doing partial >"commit is" && mkdir not && echo very much encouraged but we should >not/forbid && -- 2.30.2