]> git.ipfire.org Git - thirdparty/git.git/commitdiff
t0027: add tests for eol without text in .gitattributes
authorbrian m. carlson <sandals@crustytoothpaste.net>
Tue, 11 Jan 2022 02:15:06 +0000 (02:15 +0000)
committerJunio C Hamano <gitster@pobox.com>
Wed, 12 Jan 2022 18:22:21 +0000 (10:22 -0800)
Right now, it isn't clear what the behavior is when the eol attribute is
set in .gitattributes but the text attribute is not.  Let's add some
tests to document this behavior in our code, which happens to be that
the behavior is as if we set the text attribute implicitly.  This will
make sure we don't accidentally change the behavior, which somebody is
probably relying on, and serve as documentation to developers.

Signed-off-by: brian m. carlson <sandals@crustytoothpaste.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
t/t0027-auto-crlf.sh

index 4a5c5c602cfa8f53ecb9e329a20e67a008fb0e00..c5f7ac63b0ab98d0ff3b4924e51f3c899b40eeb5 100755 (executable)
@@ -597,6 +597,12 @@ do
        # auto: core.autocrlf=false and core.eol unset(or native) uses native eol
        checkout_files     auto  "$id" ""     false   ""       $NL   CRLF  CRLF_mix_LF  LF_mix_CR    LF_nul
        checkout_files     auto  "$id" ""     false   native   $NL   CRLF  CRLF_mix_LF  LF_mix_CR    LF_nul
+       # core.autocrlf false, .gitattributes sets eol
+       checkout_files     ""    "$id" "lf"   false   ""       LF    CRLF  CRLF_mix_LF  LF_mix_CR    LF_nul
+       checkout_files     ""    "$id" "crlf" false   ""       CRLF  CRLF  CRLF         CRLF_mix_CR  CRLF_nul
+       # core.autocrlf true, .gitattributes sets eol
+       checkout_files     ""    "$id" "lf"   true    ""       LF    CRLF  CRLF_mix_LF  LF_mix_CR    LF_nul
+       checkout_files     ""    "$id" "crlf" true    ""       CRLF  CRLF  CRLF         CRLF_mix_CR  CRLF_nul
 done
 
 # The rest of the tests are unique; do the usual linting.