t / t4006-diff-mode.shon commit Merge branch 'maint' (1562445)
   1#!/bin/sh
   2#
   3# Copyright (c) 2005 Junio C Hamano
   4#
   5
   6test_description='Test mode change diffs.
   7
   8'
   9. ./test-lib.sh
  10
  11test_expect_success \
  12    'setup' \
  13    'echo frotz >rezrov &&
  14     git update-index --add rezrov &&
  15     tree=`git write-tree` &&
  16     echo $tree'
  17
  18if [ "$(git config --get core.filemode)" = false ]
  19then
  20        say 'filemode disabled on the filesystem, using update-index --chmod=+x'
  21        test_expect_success \
  22            'git update-index --chmod=+x' \
  23            'git update-index rezrov &&
  24             git update-index --chmod=+x rezrov &&
  25             git diff-index $tree >current'
  26else
  27        test_expect_success \
  28            'chmod' \
  29            'chmod +x rezrov &&
  30             git update-index rezrov &&
  31             git diff-index $tree >current'
  32fi
  33
  34_x40='[0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f]'
  35_x40="$_x40$_x40$_x40$_x40$_x40$_x40$_x40$_x40"
  36sed -e 's/\(:100644 100755\) \('"$_x40"'\) \2 /\1 X X /' <current >check
  37echo ":100644 100755 X X M      rezrov" >expected
  38
  39test_expect_success \
  40    'verify' \
  41    'test_cmp expected check'
  42
  43test_done