All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Torsten Bögershausen" <tboegi@web.de>
To: Thomas Braun <thomas.braun@virtuell-zuhause.de>,
	GIT Mailing-list <git@vger.kernel.org>
Cc: git-win-sdk@googlegroups.com
Subject: Re: Failing tests in t0027-autocrlf.sh under msysgit/git-win-sdk
Date: Thu, 02 Oct 2014 15:42:18 +0200	[thread overview]
Message-ID: <542D563A.8070306@web.de> (raw)
In-Reply-To: <542D4769.60503@virtuell-zuhause.de>

On 2014-10-02 14.39, Thomas Braun wrote:
> Hi,
> 
> I've enabled EXPENSIVE and ran the git test suite under msysgit/git-win-sdk with
> git version 2.1.0.9753.g360f311.dirty.
> 
> Now I have some failing tests in t0027-autocrlf.sh in the MINGW only section which puzzle me.
> 
> The offending test sets are
> 
> diff --git a/t/t0027-auto-crlf.sh b/t/t0027-auto-crlf.sh
> index 72dd3e8..90c4cd1 100755
> --- a/t/t0027-auto-crlf.sh
> +++ b/t/t0027-auto-crlf.sh
> @@ -245,18 +245,18 @@ if test_have_prereq MINGW
>  then
>  check_files_in_ws ""      false ""        LF    CRLF  CRLF_mix_LF  LF_mix_CR    CRLF_nul
>  check_files_in_ws ""      true  ""        CRLF  CRLF  CRLF_mix_LF  LF_mix_CR    CRLF_nul
> -check_files_in_ws ""      false "auto"    LF    CRLF  CRLF_mix_LF  LF_mix_CR    CRLF_nul
> +# check_files_in_ws ""      false "auto"    LF    CRLF  CRLF_mix_LF  LF_mix_CR    CRLF_nul # first broken

>  check_files_in_ws ""      true  "auto"    CRLF  CRLF  CRLF         LF_mix_CR    CRLF_nul
> -check_files_in_ws ""      false "text"    LF    CRLF  CRLF_mix_LF  LF_mix_CR    CRLF_nul
> +# check_files_in_ws ""      false "text"    LF    CRLF  CRLF_mix_LF  LF_mix_CR    CRLF_nul # broken
>  check_files_in_ws ""      true  "text"    CRLF  CRLF  CRLF         CRLF_mix_CR  CRLF_nul
>  check_files_in_ws ""      false "-text"   LF    CRLF  CRLF_mix_LF  LF_mix_CR    CRLF_nul
>  check_files_in_ws ""      true  "-text"   LF    CRLF  CRLF_mix_LF  LF_mix_CR    CRLF_nul
>  
>  check_files_in_ws native  false ""        LF    CRLF  CRLF_mix_LF  LF_mix_CR    CRLF_nul
>  check_files_in_ws native  true  ""        CRLF  CRLF  CRLF_mix_LF  LF_mix_CR    CRLF_nul
> -check_files_in_ws native  false "auto"    LF    CRLF  CRLF_mix_LF  LF_mix_CR    CRLF_nul
> +# check_files_in_ws native  false "auto"    LF    CRLF  CRLF_mix_LF  LF_mix_CR    CRLF_nul # broken
>  check_files_in_ws native  true  "auto"    CRLF  CRLF  CRLF         LF_mix_CR    CRLF_nul
> -check_files_in_ws native  false "text"    LF    CRLF  CRLF_mix_LF  LF_mix_CR    CRLF_nul
> +# check_files_in_ws native  false "text"    LF    CRLF  CRLF_mix_LF  LF_mix_CR    CRLF_nul # broken
>  check_files_in_ws native  true  "text"    CRLF  CRLF  CRLF         CRLF_mix_CR  CRLF_nul
>  check_files_in_ws native  false "-text"   LF    CRLF  CRLF_mix_LF  LF_mix_CR    CRLF_nul
>  check_files_in_ws native  true  "-text"   LF    CRLF  CRLF_mix_LF  LF_mix_CR    CRLF_nul
> 
> I tried with NATIVE_CRLF = YesPlease but 117 failed too.
> 
> First question, under what MINGW system do these tests pass?
> Second question any hints how to tackle this?

> 
> The first failing test is
> not ok 117 - checkout core.eol= core.autocrlf=false gitattributes=auto file=LF
> #
> #                       compare_ws_file eol__crlf_false_attr_auto_ LF    crlf_false_attr__LF.txt
> #
> 
> 
> where I have in the trash directory
> 
> $ diff -Nur *expect* *actual*
> --- LF.expect   2014-10-02 12:15:17 +0000
> +++ eol__crlf_false_attr_auto_.actual.crlf_false_attr__LF.txt   2014-10-02 12:15

First things first:
We have a file with LF in the repo, and check it out.

Read it like this:
"eol__crlf_false_attr_auto_.actual"
                 ^ *.txt auto in .gitconfig   
      ^
      core.autocrlf is false 
  ^
  core.eol is unset

The file is expected to have LF in the working tree, but has CRLF

> :17 +0000
> @@ -1,3 +1,3 @@
> -0000000   l   i   n   e   1  \n   l   i   n   e   2  \n   l   i   n   e
> -0000020   3
> -0000021
> +0000000   l   i   n   e   1  \r  \n   l   i   n   e   2  \r  \n   l   i
> +0000020   n   e   3
> +0000023
> 
> Reading convert.h tells me that for undefined NATIVE_CRLF the native EOL is LF.
> Which looks like the test is correct.
> 
> Thomas
> 
Which version of t0027 do you have:
The latest version in git.git is this one,
and "should pass" (but I may have missed something)

commit f6975a6b119128de1c5a89e6cd64f75ed1de2177
Author: Torsten Bögershausen <tboegi@web.de>
Date:   Sat Aug 16 22:16:58 2014 +0200

    t0027: Tests for core.eol=native, eol=lf, eol=crlf
    
    Add test cases for core.eol "native" and "" (unset).
    (MINGW uses CRLF, all other systems LF as native line endings)
    
    Add test cases for the attributes "eol=lf" and "eol=crlf"
    
    Other minor changes:
    - Use the more portable 'tr' instead of 'od -c' to convert '\n' into 'Q'
      and '\0' into 'N'
    - Style fixes for shell functions according to the coding guide lines
    - Replace "txtbin" with "attr"
    
    Signed-off-by: Torsten Bögershausen <tboegi@web.de>
    Signed-off-by: Junio C Hamano <gitster@pobox.com>

  reply	other threads:[~2014-10-02 13:42 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-10-02 12:39 Failing tests in t0027-autocrlf.sh under msysgit/git-win-sdk Thomas Braun
2014-10-02 13:42 ` Torsten Bögershausen [this message]
2014-10-02 14:14   ` Thomas Braun

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=542D563A.8070306@web.de \
    --to=tboegi@web.de \
    --cc=git-win-sdk@googlegroups.com \
    --cc=git@vger.kernel.org \
    --cc=thomas.braun@virtuell-zuhause.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.