# [PATCH revised] git_mkstemps: add test suite test

5 messages from 2013-08-06 to 2013-08-06. Participants: Dale R. Worley, Junio C Hamano.
Thread: https://gitlist.dev/t/34626

## Dale R. Worley, 2013-08-06 18:05

Subject: [PATCH revised] git_mkstemps: add test suite test
Message-ID: <201308061805.r76I51If026086@freeze.ariadne.com>
URL: https://gitlist.dev/e/201308061805.r76I51If026086%40freeze.ariadne.com

```
Commit a2cb86 ("git_mkstemps: correctly test return value of open()",
12 Jul 2013) fixes a bug regarding testing the return of an open()
call for success/failure.  Add a testsuite test for that fix.  The
test exercises a situation where that open() is known to return 0.

Signed-off-by: Dale Worley <worley@ariadne.com>
---
This version of the patch cleans up a number of errors in my previous
version (which were ultimately due to my faulty updating of my master
branch).  The commit that added the open() test is now correctly
described.  Since the test was not present in the test suite at all,
the patch is described as adding the test rather than improving it.

a2cb86 is on branch tr/fd-gotcha-fixes, but that has been merged into
master now.

(Thanks for your patience with this.)

Dale

 t/t0070-fundamental.sh | 7 +++++++
 1 file changed, 7 insertions(+)

diff --git a/t/t0070-fundamental.sh b/t/t0070-fundamental.sh
index 986b2a8..d427f3a 100755
--- a/t/t0070-fundamental.sh
+++ b/t/t0070-fundamental.sh
@@ -25,6 +25,13 @@ test_expect_success POSIXPERM,SANITY 'mktemp to unwritable directory prints file
 	grep "cannotwrite/test" err
 '
 
+test_expect_success 'git_mkstemps_mode does not fail if fd 0 is not open' '
+	git init &&
+	echo Test. >test-file &&
+	git add test-file &&
+	git commit -m Message. <&-
+'
+
 test_expect_success 'check for a bug in the regex routines' '
 	# if this test fails, re-build git with NO_REGEX=1
 	test-regex
-- 
1.8.4.rc1.24.gd407a5c

```

## Junio C Hamano, 2013-08-06 18:17

Subject: Re: [PATCH revised] git_mkstemps: add test suite test
Message-ID: <7vsiymfzuh.fsf@alter.siamese.dyndns.org>
URL: https://gitlist.dev/e/7vsiymfzuh.fsf%40alter.siamese.dyndns.org
In-Reply-To: <201308061805.r76I51If026086@freeze.ariadne.com>

```
worley@alum.mit.edu (Dale R. Worley) writes:

> Commit a2cb86 ("git_mkstemps: correctly test return value of open()",
> 12 Jul 2013) fixes a bug regarding testing the return of an open()
> call for success/failure.  Add a testsuite test for that fix.  The
> test exercises a situation where that open() is known to return 0.
>
> Signed-off-by: Dale Worley <worley@ariadne.com>
> ---
> This version of the patch cleans up a number of errors in my previous
> version (which were ultimately due to my faulty updating of my master
> branch).  The commit that added the open() test is now correctly
> described.  Since the test was not present in the test suite at all,
> the patch is described as adding the test rather than improving it.
>
> a2cb86 is on branch tr/fd-gotcha-fixes, but that has been merged into
> master now.

Thanks. I thought I've already queued 

Message-ID: <7vfvuokpr0.fsf@alter.siamese.dyndns.org>
aka 
http://article.gmane.org/gmane.comp.version-control.git/231680

which tests

    git commit --allow-empty -m message <&-

> +test_expect_success 'git_mkstemps_mode does not fail if fd 0 is not open' '
> +	git init &&

This does not do anything useful; you are in the test playpen aka
"trash" which is an already initialized git repository.

> +	echo Test. >test-file &&
> +	git add test-file &&

You do not have to have extra contents...

> +	git commit -m Message. <&-

...you can do with just "--allow-empty" instead.

```

## Dale R. Worley, 2013-08-06 18:59

Subject: Re: [PATCH revised] git_mkstemps: add test suite test
Message-ID: <201308061859.r76IxMLl027315@freeze.ariadne.com>
URL: https://gitlist.dev/e/201308061859.r76IxMLl027315%40freeze.ariadne.com
In-Reply-To: <7vsiymfzuh.fsf@alter.siamese.dyndns.org>

```
> From: Junio C Hamano <gitster@pobox.com>
> 
> Thanks. I thought I've already queued 
> 
> Message-ID: <7vfvuokpr0.fsf@alter.siamese.dyndns.org>
> aka 
> http://article.gmane.org/gmane.comp.version-control.git/231680
> 
> which tests
> 
>     git commit --allow-empty -m message <&-

My mistake...  I've been so intent on revising my repository and
rewriting the patch that I overlooked that you'd done the revision
already.

Dale

```

## Dale R. Worley, 2013-08-06 19:02

Subject: Re: [PATCH revised] git_mkstemps: add test suite test
Message-ID: <201308061902.r76J2W33027399@freeze.ariadne.com>
URL: https://gitlist.dev/e/201308061902.r76J2W33027399%40freeze.ariadne.com
In-Reply-To: <7vsiymfzuh.fsf@alter.siamese.dyndns.org>

```
>     git commit --allow-empty -m message <&-

Though as of [fb56570] "Sync with maint to grab trivial doc fixes",
that test doesn't fail for me if I revert to

		fd = open(pattern, O_CREAT | O_EXCL | O_RDWR, mode);
		if (fd > 0)
			return fd;

I haven't been watching the code changes carefully; has there been a
fix that is expected to cause that?

Dale

```

## Junio C Hamano, 2013-08-06 20:50

Subject: Re: [PATCH revised] git_mkstemps: add test suite test
Message-ID: <7vd2pqfssc.fsf@alter.siamese.dyndns.org>
URL: https://gitlist.dev/e/7vd2pqfssc.fsf%40alter.siamese.dyndns.org
In-Reply-To: <201308061902.r76J2W33027399@freeze.ariadne.com>

```
worley@alum.mit.edu (Dale R. Worley) writes:

>>     git commit --allow-empty -m message <&-
>
> Though as of [fb56570] "Sync with maint to grab trivial doc fixes",
> that test doesn't fail for me if I revert to
>
> 		fd = open(pattern, O_CREAT | O_EXCL | O_RDWR, mode);
> 		if (fd > 0)
> 			return fd;
>
> I haven't been watching the code changes carefully; has there been a
> fix that is expected to cause that?
>
> Dale

That is because a11c3964 (git: ensure 0/1/2 are open in main(),
2013-07-16) happened in the meantime, I think.

```
