Git fork
at reftables-rust 67 lines 1.5 kB view raw
1#!/bin/sh 2# 3# Copyright (c) 2005 Junio C Hamano 4# 5 6test_description='Test mode change diffs. 7 8' 9 10. ./test-lib.sh 11 12sed_script='s/\(:100644 100755\) \('"$OID_REGEX"'\) \2 /\1 X X /' 13 14test_expect_success 'setup' ' 15 echo frotz >rezrov && 16 git update-index --add rezrov && 17 tree=$(git write-tree) && 18 echo $tree 19' 20 21test_expect_success 'chmod' ' 22 test_chmod +x rezrov && 23 git diff-index $tree >current && 24 sed -e "$sed_script" <current >check && 25 echo ":100644 100755 X X M rezrov" >expected && 26 test_cmp expected check 27' 28 29test_expect_success 'prepare binary file' ' 30 git commit -m one && 31 test_commit --printf two binbin "\00\01\02\03\04\05\06" 32' 33 34test_expect_success '--stat output after text chmod' ' 35 test_chmod -x rezrov && 36 cat >expect <<-\EOF && 37 rezrov | 0 38 1 file changed, 0 insertions(+), 0 deletions(-) 39 EOF 40 git diff HEAD --stat >actual && 41 test_cmp expect actual 42' 43 44test_expect_success '--shortstat output after text chmod' ' 45 tail -n 1 <expect >expect.short && 46 git diff HEAD --shortstat >actual && 47 test_cmp expect.short actual 48' 49 50test_expect_success '--stat output after binary chmod' ' 51 test_chmod +x binbin && 52 cat >expect <<-EOF && 53 binbin | Bin 54 rezrov | 0 55 2 files changed, 0 insertions(+), 0 deletions(-) 56 EOF 57 git diff HEAD --stat >actual && 58 test_cmp expect actual 59' 60 61test_expect_success '--shortstat output after binary chmod' ' 62 tail -n 1 <expect >expect.short && 63 git diff HEAD --shortstat >actual && 64 test_cmp expect.short actual 65' 66 67test_done