#!/bin/sh test_description='diff function context' . ./test-lib.sh . "$TEST_DIRECTORY"/diff-lib.sh cat <<\EOF >hello.c #include <stdio.h> static int a(void) { /* * Dummy. */ } static int hello_world(void) { /* Classic. */ printf("Hello world.\n"); /* Success! */ return 0; } static int b(void) { /* * Dummy, too. */ } int main(int argc, char **argv) { a(); b(); return hello_world(); } EOF test_expect_success 'setup' ' git add hello.c && test_tick && git commit -m initial && grep -v Classic <hello.c >hello.c.new && mv hello.c.new hello.c ' cat <<\EOF >expected diff --git a/hello.c b/hello.c --- a/hello.c +++ b/hello.c @@ -10,8 +10,7 @@ static int a(void) static int hello_world(void) { - /* Classic. */ printf("Hello world.\n"); /* Success! */ return 0; } EOF test_expect_success 'diff -U0 -W' ' git diff -U0 -W >actual && compare_diff_patch actual expected ' cat <<\EOF >expected diff --git a/hello.c b/hello.c --- a/hello.c +++ b/hello.c @@ -9,9 +9,8 @@ static int a(void) static int hello_world(void) { - /* Classic. */ printf("Hello world.\n"); /* Success! */ return 0; } EOF test_expect_success 'diff -W' ' git diff -W >actual && compare_diff_patch actual expected ' test_done