From: Jonathan Nieder Date: Fri, 24 Sep 2010 07:05:10 GMT Subject: [PATCH 02/24] t9300 (fast-import): avoid hard-coded object names Message-ID: <20100924070510.GC4666@burratino> In-Reply-To: <20100924065900.GA4666@burratino> compare_diff_raw already ensures most (though not all) of the tests do not rely on any particular hash function, but still the attentive reader might be comforted by some less opaque object descriptions. Tested with sed -i s/compare_diff_raw/test_cmp/g t9300-fast-import.sh && sh t9300-fast-import.sh -v -i Cc: Shawn O. Pearce Signed-off-by: Jonathan Nieder --- t/t9300-fast-import.sh | 91 ++++++++++++++++++++++++++++++++--------------- 1 files changed, 62 insertions(+), 29 deletions(-) diff --git a/t/t9300-fast-import.sh b/t/t9300-fast-import.sh index 1eef926..ed37a4e 100755 --- a/t/t9300-fast-import.sh +++ b/t/t9300-fast-import.sh @@ -7,6 +7,8 @@ test_description='test git fast-import utility' . ./test-lib.sh . "$TEST_DIRECTORY"/diff-lib.sh ;# test-lib chdir's into trash +zeroes=0000000000000000000000000000000000000000 + file2_data='file2 second line of EOF' @@ -31,6 +33,14 @@ verify_packs () { done } +test_expect_success 'setup' ' + file2_id=$(echo "$file2_data" | git hash-object --stdin) && + file3_id=$(echo "$file3_data" | git hash-object --stdin) && + file4_id=$(printf "%s" "$file4_data" | git hash-object --stdin) && + file5_id=$(echo "$file5_data" | git hash-object --stdin) && + file6_id=$(echo "$file6_data" | git hash-object --stdin) +' + ### ### series A ### @@ -165,7 +175,7 @@ test_expect_success \ 'A: verify pack' \ 'verify_packs' cat >expect <actual test_expect_success \ @@ -345,9 +355,9 @@ test_expect_success \ test_cmp expect actual' cat >expect <actual test_expect_success \ @@ -387,8 +397,8 @@ test_expect_success \ 'verify_packs' cat >expect <actual test_expect_success \ @@ -557,11 +567,11 @@ test_expect_success \ 'verify_packs' cat >expect <actual test_expect_success \ @@ -698,16 +708,39 @@ M 644 :2 b/other M 644 :2 ba INPUT_END +test_expect_success 'setup: object names for expected diff' ' + some_data=$( + echo some data | + git hash-object -w --stdin + ) && + other_data=$( + echo other data | + git hash-object -w --stdin + ) && + some_tree=$( + rm -f tmp_index && + echo "100644 blob $some_data other" | + GIT_INDEX_FILE=tmp_index git update-index --index-info && + GIT_INDEX_FILE=tmp_index git write-tree + ) && + other_tree=$( + rm -f tmp_index && + echo "100644 blob $other_data other" | + GIT_INDEX_FILE=tmp_index git update-index --index-info && + GIT_INDEX_FILE=tmp_index git write-tree + ) +' + cat >expect <output && + git diff-tree L^ L >output && test_cmp expect output' ### @@ -728,7 +761,7 @@ R file2/newf file2/n.e.w.f INPUT_END cat >expect <expect <expect <expect <expect <expect <<-\EOF && - :100755 100755 f1fb5da718392694d0076d677d6d0e364c79b0bc f1fb5da718392694d0076d677d6d0e364c79b0bc C100 file2/newf file3/newf - :100644 100644 7123f7f44e39be127c5eb701e5968176ee9d78b1 7123f7f44e39be127c5eb701e5968176ee9d78b1 C100 file2/oldf file3/oldf + 'cat >expect <<-EOF && + :100755 100755 $newf $newf C100 file2/newf file3/newf + :100644 100644 $oldf $oldf C100 file2/oldf file3/oldf EOF subdir=$(git rev-parse refs/heads/branch^0:file2) && cat >input <<-INPUT_END && @@ -884,10 +917,10 @@ test_expect_success \ test_expect_success \ 'N: modify copied tree' \ - 'cat >expect <<-\EOF && - :100644 100644 fcf778cda181eaa1cbc9e9ce3a2e15ee9f9fe791 fcf778cda181eaa1cbc9e9ce3a2e15ee9f9fe791 C100 newdir/interesting file3/file5 - :100755 100755 f1fb5da718392694d0076d677d6d0e364c79b0bc f1fb5da718392694d0076d677d6d0e364c79b0bc C100 file2/newf file3/newf - :100644 100644 7123f7f44e39be127c5eb701e5968176ee9d78b1 7123f7f44e39be127c5eb701e5968176ee9d78b1 C100 file2/oldf file3/oldf + 'cat >expect <<-EOF && + :100644 100644 $file5_id $file5_id C100 newdir/interesting file3/file5 + :100755 100755 $newf $newf C100 file2/newf file3/newf + :100644 100644 $oldf $oldf C100 file2/oldf file3/oldf EOF subdir=$(git rev-parse refs/heads/branch^0:file2) && cat >input <<-INPUT_END && -- 1.7.2.3