| #!/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 |