| test_description='git apply handling criss-cross rename patch.' |
| test_expect_success 'setup' ' |
| create_file file1 "File1 contents" && |
| create_file file2 "File2 contents" && |
| create_file file3 "File3 contents" && |
| git add file1 file2 file3 && |
| test_expect_success 'criss-cross rename' ' |
| cp file1 file1-swapped && |
| test_expect_success 'diff -M -B' ' |
| test_expect_success 'apply' ' |
| test_cmp file1 file1-swapped && |
| test_cmp file2 file2-swapped |
| test_expect_success 'criss-cross rename' ' |
| cp file1 file1-swapped && |
| cp file2 file2-swapped && |
| test_expect_success 'diff -M -B' ' |
| test_expect_success 'apply' ' |
| test_cmp file1 file1-swapped && |
| test_cmp file2 file2-swapped && |
| test_cmp file3 file3-swapped |