Browse Source

test-lib.sh: introduce and use $EMPTY_TREE

This is a special SHA1. Let's keep it at one place, easier to replace
later when the hash change comes, easier to recognize.

Signed-off-by: Nguyễn Thái Ngọc Duy <pclouds@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
maint
Nguyễn Thái Ngọc Duy 9 years ago committed by Junio C Hamano
parent
commit
f9e7d9f8c3
  1. 2
      t/t0000-basic.sh
  2. 2
      t/t1100-commit-tree-options.sh
  3. 2
      t/t4010-diff-pathspec.sh
  4. 10
      t/t4054-diff-bogus-tree.sh
  5. 4
      t/t5504-fetch-receive-strict.sh
  6. 4
      t/test-lib.sh

2
t/t0000-basic.sh

@ -834,7 +834,7 @@ test_expect_success 'git write-tree should be able to write an empty tree' ' @@ -834,7 +834,7 @@ test_expect_success 'git write-tree should be able to write an empty tree' '
'

test_expect_success 'validate object ID of a known tree' '
test "$tree" = 4b825dc642cb6eb9a060e54bf8d69288fbee4904
test "$tree" = $EMPTY_TREE
'

# Various types of objects

2
t/t1100-commit-tree-options.sh

@ -15,7 +15,7 @@ Also make sure that command line parser understands the normal @@ -15,7 +15,7 @@ Also make sure that command line parser understands the normal
. ./test-lib.sh

cat >expected <<EOF
tree 4b825dc642cb6eb9a060e54bf8d69288fbee4904
tree $EMPTY_TREE
author Author Name <author@email> 1117148400 +0000
committer Committer Name <committer@email> 1117150200 +0000


2
t/t4010-diff-pathspec.sh

@ -78,8 +78,6 @@ test_expect_success 'diff-tree pathspec' ' @@ -78,8 +78,6 @@ test_expect_success 'diff-tree pathspec' '
test_cmp expected current
'

EMPTY_TREE=4b825dc642cb6eb9a060e54bf8d69288fbee4904

test_expect_success 'diff-tree with wildcard shows dir also matches' '
git diff-tree --name-only $EMPTY_TREE $tree -- "f*" >result &&
echo file0 >expected &&

10
t/t4054-diff-bogus-tree.sh

@ -3,8 +3,6 @@ @@ -3,8 +3,6 @@
test_description='test diff with a bogus tree containing the null sha1'
. ./test-lib.sh

empty_tree=4b825dc642cb6eb9a060e54bf8d69288fbee4904

test_expect_success 'create bogus tree' '
bogus_tree=$(
printf "100644 fooQQQQQQQQQQQQQQQQQQQQQ" |
@ -22,13 +20,13 @@ test_expect_success 'create tree with matching file' ' @@ -22,13 +20,13 @@ test_expect_success 'create tree with matching file' '

test_expect_success 'raw diff shows null sha1 (addition)' '
echo ":000000 100644 $_z40 $_z40 A foo" >expect &&
git diff-tree $empty_tree $bogus_tree >actual &&
git diff-tree $EMPTY_TREE $bogus_tree >actual &&
test_cmp expect actual
'

test_expect_success 'raw diff shows null sha1 (removal)' '
echo ":100644 000000 $_z40 $_z40 D foo" >expect &&
git diff-tree $bogus_tree $empty_tree >actual &&
git diff-tree $bogus_tree $EMPTY_TREE >actual &&
test_cmp expect actual
'

@ -57,11 +55,11 @@ test_expect_success 'raw diff shows null sha1 (index)' ' @@ -57,11 +55,11 @@ test_expect_success 'raw diff shows null sha1 (index)' '
'

test_expect_success 'patch fails due to bogus sha1 (addition)' '
test_must_fail git diff-tree -p $empty_tree $bogus_tree
test_must_fail git diff-tree -p $EMPTY_TREE $bogus_tree
'

test_expect_success 'patch fails due to bogus sha1 (removal)' '
test_must_fail git diff-tree -p $bogus_tree $empty_tree
test_must_fail git diff-tree -p $bogus_tree $EMPTY_TREE
'

test_expect_success 'patch fails due to bogus sha1 (modification)' '

4
t/t5504-fetch-receive-strict.sh

@ -115,8 +115,8 @@ test_expect_success 'push with transfer.fsckobjects' ' @@ -115,8 +115,8 @@ test_expect_success 'push with transfer.fsckobjects' '
test_cmp exp act
'

cat >bogus-commit <<\EOF
tree 4b825dc642cb6eb9a060e54bf8d69288fbee4904
cat >bogus-commit <<EOF
tree $EMPTY_TREE
author Bugs Bunny 1234567890 +0000
committer Bugs Bunny <bugs@bun.ni> 1234567890 +0000


4
t/test-lib.sh

@ -162,6 +162,8 @@ _x40="$_x05$_x05$_x05$_x05$_x05$_x05$_x05$_x05" @@ -162,6 +162,8 @@ _x40="$_x05$_x05$_x05$_x05$_x05$_x05$_x05$_x05"
# Zero SHA-1
_z40=0000000000000000000000000000000000000000

EMPTY_TREE=4b825dc642cb6eb9a060e54bf8d69288fbee4904

# Line feed
LF='
'
@ -170,7 +172,7 @@ LF=' @@ -170,7 +172,7 @@ LF='
# when case-folding filenames
u200c=$(printf '\342\200\214')

export _x05 _x40 _z40 LF u200c
export _x05 _x40 _z40 LF u200c EMPTY_TREE

# Each test should start with something like this, after copyright notices:
#

Loading…
Cancel
Save