Subject: Re: Git Test Coverage Report (October 11)

From: Derrick Stolee <[email-masked]>
Date: Wed, 23 Oct 2019 14:07:20 -0400

On 10/23/2019 1:00 PM, Torsten Bögershausen wrote:
> On Fri, Oct 11, 2019 at 09:33:11AM -0400, Derrick Stolee wrote:
>> Here is today's test coverage report. The usual report format is
>> available online [1], [2]. The report listed below is a new format
>> that groups lines by the commit that introduced them [3]. Thanks
>> Peff for the feedback on that idea.
>>
> 
> []
>>
>> Torsten Bögershausen	ebb8d2c9 mingw: support UNC in git clone file://server/share/repo
>> connect.c
>> ebb8d2c9 921) path = host - 2; /* include the leading "//" */
>>
> 
> I actually looked into this one, and my understanding is that the code path
> makes only sense for windows and is only tested on Windows in t5500.
> (Linux/Unix/POSIX don't use UNC path names starting with "//" )
> 
> How can we avoid those "not covered by test" warnings?
> 
> One solution could be to use
> 
> #ifndef has_dos_drive_prefix
> #define has_dos_drive_prefix(a) 0
> #endif
> 
> in git-compat-util.h and hope that the compiler is smart enough
> to optimize away that line of code.
> 
> Another way could be to have #ifdefs in connect.c, so that it
> is clear "this is Windows only".
> 
> Or make a comment for the "cover report" saying "not covered".
> 
> Are there any good or better thoughts on this ?

One way to avoid this is to add ignored lines to the test-coverage
repo [1]. These only work if the exact contents match on a specific
line number, but can be a way to stop noise in the short-term.

For example, I added a few lines to ignore in commit-graph.c [2],
but I haven't added ignored lines in a while.

I'm happy to take a PR including the lines you want to ignore, or
I could take inventory of the lines in the current report before regenerating
a test for -rc1.

Thanks,
-Stolee

[1] https://github.com/derrickstolee/git-test-coverage

[2] https://github.com/derrickstolee/git-test-coverage/blob/master/ignored/commit-graph.c