1#!/bin/sh
   2#
   3# Copyright (c) 2006 Junio C Hamano
   4#
   5test_description='git apply with new style GNU diff with empty context
   7'
   9. ./test-lib.sh
  11test_expect_success setup '
  13        {
  14                echo; echo;
  15                echo A; echo B; echo C;
  16                echo;
  17        } >file1 &&
  18        cat file1 >file1.orig &&
  19        {
  20                cat file1 &&
  21                echo Q | tr -d "\\012"
  22        } >file2 &&
  23        cat file2 >file2.orig &&
  24        git add file1 file2 &&
  25        sed -e "/^B/d" <file1.orig >file1 &&
  26        cat file1 > file2 &&
  27        echo Q | tr -d "\\012" >>file2 &&
  28        cat file1 >file1.mods &&
  29        cat file2 >file2.mods &&
  30        git diff |
  31        sed -e "s/^ \$//" >diff.output
  32'
  33test_expect_success 'apply --numstat' '
  35        git apply --numstat diff.output >actual &&
  37        {
  38                echo "0 1       file1" &&
  39                echo "0 1       file2"
  40        } >expect &&
  41        test_cmp expect actual
  42'
  44test_expect_success 'apply --apply' '
  46        cat file1.orig >file1 &&
  48        cat file2.orig >file2 &&
  49        git update-index file1 file2 &&
  50        git apply --index diff.output &&
  51        test_cmp file1.mods file1 &&
  52        test_cmp file2.mods file2
  53'
  54test_done