Subject: Re: [PATCH 1/4] test-suite: adding a test for fast-export with tag variants

From: Junio C Hamano <[email-masked]>
Date: Sun, 29 Mar 2009 19:50:37 -0700

Erik Faye-Lund <[email-masked]> writes:

>> But running the tests with the first patch applied to the same base as
>> where v1 was applied gives this, which is a more serious issue:
>>
>>    $ sh t9301-fast-export.sh 2>&1 | tail -n 2
>>    * still have 4 known breakage(s)
>>    * failed 6 among remaining 15 test(s)
>>
>> In other words, the changes to the set-up part seem to break unrelated
>> tests.  Why can such an update supersede the previous one?
>
> That's weird. I did test it properly before I applied it, and I don't
> recall having any failures on Linux.

I think it is just the matter of doing something like this instead of your
patch [PATCH v2 1/4].  Either that, or I think you need to adjust the
existing tests that try to export --all and get hit by the fast that you
added the tags you already knew the old code had trouble with in the test
setup for them.

-- >8 --
From: Erik Faye-Lund <[email-masked]>
Date: Mon, 23 Mar 2009 12:53:06 +0000
Subject: [PATCH] test-suite: adding a test for fast-export with tag variants

Signed-off-by: Erik Faye-Lund <[email-masked]>
Signed-off-by: Junio C Hamano <[email-masked]>
---
 t/t9301-fast-export.sh |   16 ++++++++++++++++
 1 files changed, 16 insertions(+), 0 deletions(-)

diff --git a/t/t9301-fast-export.sh b/t/t9301-fast-export.sh
index 86c3760..2e31f67 100755
--- a/t/t9301-fast-export.sh
+++ b/t/t9301-fast-export.sh
@@ -259,4 +259,20 @@ test_expect_success 'cope with tagger-less tags' '
 
 '
 
+test_expect_success 'set-up a few more tags for tag export tests' '
+	git checkout -f master &&
+	HEAD_TREE=`git show -s --pretty=raw HEAD | grep tree | sed "s/tree //"` &&
+	git tag    tree_tag        -m "tagging a tree" $HEAD_TREE &&
+	git tag -a tree_tag-obj    -m "tagging a tree" $HEAD_TREE &&
+	git tag    tag-obj_tag     -m "tagging a tag" tree_tag-obj &&
+	git tag -a tag-obj_tag-obj -m "tagging a tag" tree_tag-obj
+'
+
+# NEEDSWORK: not just check return status, but validate the output
+# two tests commented out due to crash and thus unreliable return code
+test_expect_failure 'tree_tag'        'git fast-export tree_tag'
+test_expect_failure 'tree_tag-obj'    'git fast-export tree_tag-obj'
+test_expect_failure 'tag-obj_tag'     'git fast-export tag-obj_tag'
+test_expect_failure 'tag-obj_tag-obj' 'git fast-export tag-obj_tag-obj'
+
 test_done
-- 
1.6.2.1