Signed-off-by Henrik Grubbström <grubba@xxxxxxxxxx> --- A subshell has been added to the CRLF conversion mode tests to avoid the changed cwd leaking. t/t0021-conversion.sh | 54 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 54 insertions(+), 0 deletions(-) diff --git a/t/t0021-conversion.sh b/t/t0021-conversion.sh index 6cb8d60..6d41ee7 100755 --- a/t/t0021-conversion.sh +++ b/t/t0021-conversion.sh @@ -89,4 +89,58 @@ test_expect_success expanded_in_repo ' cmp expanded-keywords expected-output ' +# Check that files that have had their canonical representation +# changed since being checked in aren't reported as modified +# directly after being checked out. +test_expect_success keywords_not_modified ' + { + echo "File with foreign keywords" + echo "\$Id\$" + echo "\$Id: NoTerminatingSymbol" + echo "\$Id: Foreign Commit With Spaces \$" + echo "\$Id: GitCommitId \$" + echo "\$Id: NoTerminatingSymbolAtEOF" + } > expanded-keywords2 && + + git add expanded-keywords2 && + git commit -m "File with keywords expanded" && + + echo "expanded-keywords2 ident" >> .gitattributes && + + rm -f expanded-keywords2 && + git checkout -- expanded-keywords2 && + + test "x`git status --porcelain -- expanded-keywords2`" = x +' + +# Test detection of CRLF conversion changes CRLF ==> LF. +test_expect_success crlf_conversion_change_crlf_to_lf ' +( + # step 0. a blob with CRLF + git init one && cd one && + echo -e "a quick brown fox\015" >kuzu && + git add kuzu && git commit -m kuzu && + # step 1. you want CRLF in work area, LF in repository + git config core.autocrlf true && + # step 2. user edit and revert. + touch kuzu && + git update-index --refresh +) +' + +# Test detection of CRLF conversion changes LF ==> CRLF. +test_expect_success crlf_conversion_change_lf_to_crlf ' +( + # step 0 & 1. a project with LF ending + git init two && cd two && + echo a quick brown fox >kuzu && + git add kuzu && git commit -m kuzu && + # step 2. you want CRLF in your work area + echo -e "a quick brown fox\015" >kuzu && + git config core.autocrlf true && + # step 3. oops, refresh + git update-index --refresh +) +' + test_done -- 1.7.0.4.369.g81e89 -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html