# [PATCH] Avoid duplicate test number t7609

7 messages from 2010-12-13 to 2010-12-13. Participants: Johannes Sixt, Michael J Gruber, Jeff King, Junio C Hamano.
Thread: https://gitlist.dev/t/26037

## Johannes Sixt, 2010-12-13 10:14

Subject: [PATCH] Avoid duplicate test number t7609
Message-ID: <4D05F1EA.9000403@viscovery.net>
URL: https://gitlist.dev/e/4D05F1EA.9000403%40viscovery.net

```
From: Johannes Sixt <j6t@kdbg.org>

Signed-off-by: Johannes Sixt <j6t@kdbg.org>
---
 t/{t7609-merge-abort.sh => t7611-merge-abort.sh} |    0
 1 files changed, 0 insertions(+), 0 deletions(-)
 rename t/{t7609-merge-abort.sh => t7611-merge-abort.sh} (100%)

diff --git a/t/t7609-merge-abort.sh b/t/t7611-merge-abort.sh
similarity index 100%
rename from t/t7609-merge-abort.sh
rename to t/t7611-merge-abort.sh
-- 
1.7.3.3.1800.g26f22

```

## Michael J Gruber, 2010-12-13 16:12

Subject: [PATCH/RFC] t800?-blame.sh: retitle uniquely
Message-ID: <52f777e518583955f78b71e96b3c8ff53d25b608.1292256498.git.git@drmicha.warpmail.net>
URL: https://gitlist.dev/e/52f777e518583955f78b71e96b3c8ff53d25b608.1292256498.git.git%40drmicha.warpmail.net
In-Reply-To: <4D05F1EA.9000403@viscovery.net>

```
Currently we have three test files matching t800?-blame.sh.

Rename the latter two to make it easier to spot where additions would
go.

Signed-off-by: Michael J Gruber <git@drmicha.warpmail.net>
---
On a related note to J6t's patch, how's the stance on unique titles?
Unique numbers are important for partial test runs, of course,
but unique titles help finding you way through the test.
There are more than the blame.sh ones.

 t/{t8003-blame.sh => t8003-blame-corner-cases.sh}  |    0
 ...8004-blame.sh => t8004-blame-with-conflicts.sh} |    0
 2 files changed, 0 insertions(+), 0 deletions(-)
 rename t/{t8003-blame.sh => t8003-blame-corner-cases.sh} (100%)
 rename t/{t8004-blame.sh => t8004-blame-with-conflicts.sh} (100%)

diff --git a/t/t8003-blame.sh b/t/t8003-blame-corner-cases.sh
similarity index 100%
rename from t/t8003-blame.sh
rename to t/t8003-blame-corner-cases.sh
diff --git a/t/t8004-blame.sh b/t/t8004-blame-with-conflicts.sh
similarity index 100%
rename from t/t8004-blame.sh
rename to t/t8004-blame-with-conflicts.sh
-- 
1.7.3.3.738.g018bc

```

## Jeff King, 2010-12-13 17:07

Subject: Re: [PATCH/RFC] t800?-blame.sh: retitle uniquely
Message-ID: <20101213170734.GA24736@sigill.intra.peff.net>
URL: https://gitlist.dev/e/20101213170734.GA24736%40sigill.intra.peff.net
In-Reply-To: <52f777e518583955f78b71e96b3c8ff53d25b608.1292256498.git.git@drmicha.warpmail.net>

```
On Mon, Dec 13, 2010 at 05:12:29PM +0100, Michael J Gruber wrote:

> On a related note to J6t's patch, how's the stance on unique titles?
> Unique numbers are important for partial test runs, of course,
> but unique titles help finding you way through the test.
> There are more than the blame.sh ones.

I don't think it is a big deal, but I did just 5 minutes ago get annoyed
at:

  t7500-commit.sh
  t7501-commit.sh
  t7502-commit.sh
  t7509-commit.sh

Speaking of minor test issues, we should probably also do this:

-- >8 --
Subject: [PATCH] tests: flip executable bit on t9158

All tests are supposed to be executable.

Signed-off-by: Jeff King <peff@peff.net>
---
 0 files changed, 0 insertions(+), 0 deletions(-)
 mode change 100644 => 100755 t/t9158-git-svn-mergeinfo.sh

diff --git a/t/t9158-git-svn-mergeinfo.sh b/t/t9158-git-svn-mergeinfo.sh
old mode 100644
new mode 100755
-- 
1.7.3.3.784.gccc31.dirty

```

## Jeff King, 2010-12-13 17:22

Subject: Re: [PATCH/RFC] t800?-blame.sh: retitle uniquely
Message-ID: <20101213172238.GA16136@sigill.intra.peff.net>
URL: https://gitlist.dev/e/20101213172238.GA16136%40sigill.intra.peff.net
In-Reply-To: <20101213170734.GA24736@sigill.intra.peff.net>

```
On Mon, Dec 13, 2010 at 12:07:34PM -0500, Jeff King wrote:

> Speaking of minor test issues, we should probably also do this:
> 
> -- >8 --
> Subject: [PATCH] tests: flip executable bit on t9158

BTW, I will plug my test-lint patch once again, which caught both this
and the duplicate test number mentioned earlier.

-- >8 --
Subject: [PATCH] tests: add some script lint checks

There are some common but minor errors we tend to make in
writing test scripts:

  1. Scripts are left non-executable. This is not usually
     noticed immediately because "make test" does not need
     the bit, but it is a matter of git policy to make them
     executable (and is a slight convenience when running
     individual scripts).

  2. Two scripts are allocated the same number. Usually this
     happens on separate branches, and the problem only
     comes about during a merge. But since there is no
     textual conflict, the merger would have to be very
     observant to notice.

     This is also a minor error, but can make GIT_SKIP_TESTS
     ambiguous.

This patch introduces a "test-lint" target which checks
both. It is not invoked by default. You can invoke it as
"make test-lint", or you can make it a prerequisite of
running the tests by specifying "TEST_LINT = test-lint" in
your config.mak or on the command line.

Signed-off-by: Jeff King <peff@peff.net>
---
 t/Makefile |   16 ++++++++++++++--
 1 files changed, 14 insertions(+), 2 deletions(-)

diff --git a/t/Makefile b/t/Makefile
index 73c6ec4..47cbeb6 100644
--- a/t/Makefile
+++ b/t/Makefile
@@ -23,10 +23,10 @@ TGITWEB = $(wildcard t95[0-9][0-9]-*.sh)
 
 all: $(DEFAULT_TEST_TARGET)
 
-test: pre-clean
+test: pre-clean $(TEST_LINT)
 	$(MAKE) aggregate-results-and-cleanup
 
-prove: pre-clean
+prove: pre-clean $(TEST_LINT)
 	@echo "*** prove ***"; GIT_CONFIG=.git/config $(PROVE) --exec '$(SHELL_PATH_SQ)' $(GIT_PROVE_OPTS) $(T) :: $(GIT_TEST_OPTS)
 	$(MAKE) clean
 
@@ -41,6 +41,18 @@ clean:
 	$(RM) -r valgrind/bin
 	$(RM) .prove
 
+test-lint: test-lint-duplicates test-lint-executable
+
+test-lint-duplicates:
+	@dups=`echo $(T) | tr ' ' '\n' | sed 's/-.*//' | sort | uniq -d` && \
+		test -z "$$dups" || { \
+		echo >&2 "duplicate test numbers:" $$dups; exit 1; }
+
+test-lint-executable:
+	@bad=`for i in $(T); do test -x "$$i" || echo $$i; done` && \
+		test -z "$$bad" || { \
+		echo >&2 "non-executable tests:" $$bad; exit 1; }
+
 aggregate-results-and-cleanup: $(T)
 	$(MAKE) aggregate-results
 	$(MAKE) clean
-- 
1.7.3.3.784.gccc31.dirty

```

## Junio C Hamano, 2010-12-13 19:38

Subject: Re: [PATCH/RFC] t800?-blame.sh: retitle uniquely
Message-ID: <7vk4jdzcng.fsf@alter.siamese.dyndns.org>
URL: https://gitlist.dev/e/7vk4jdzcng.fsf%40alter.siamese.dyndns.org
In-Reply-To: <20101213172238.GA16136@sigill.intra.peff.net>

```
Thanks.

```

## Junio C Hamano, 2010-12-13 19:51

Subject: Re: [PATCH/RFC] t800?-blame.sh: retitle uniquely
Message-ID: <7vfwu1zc0x.fsf@alter.siamese.dyndns.org>
URL: https://gitlist.dev/e/7vfwu1zc0x.fsf%40alter.siamese.dyndns.org
In-Reply-To: <20101213170734.GA24736@sigill.intra.peff.net>

```
Jeff King <peff@peff.net> writes:

> On Mon, Dec 13, 2010 at 05:12:29PM +0100, Michael J Gruber wrote:
>
>> On a related note to J6t's patch, how's the stance on unique titles?
>> Unique numbers are important for partial test runs, of course,
>> but unique titles help finding you way through the test.
>> There are more than the blame.sh ones.
>
> I don't think it is a big deal, but I did just 5 minutes ago get annoyed
> at:
>
>   t7500-commit.sh
>   t7501-commit.sh
>   t7502-commit.sh
>   t7509-commit.sh

t7509 seems to be about the authorship, so it is easy to rename it to
t7509-commit-authorship or something, but unfortunately I do not see
unifying theme in any of t750[012].  They test random things and there
seem to be overlaps.

Perhaps somebody wants to consolidate these three into one?

```

## Jeff King, 2010-12-13 19:58

Subject: Re: [PATCH/RFC] t800?-blame.sh: retitle uniquely
Message-ID: <20101213195846.GA18355@sigill.intra.peff.net>
URL: https://gitlist.dev/e/20101213195846.GA18355%40sigill.intra.peff.net
In-Reply-To: <7vfwu1zc0x.fsf@alter.siamese.dyndns.org>

```
On Mon, Dec 13, 2010 at 11:51:58AM -0800, Junio C Hamano wrote:

> >   t7500-commit.sh
> >   t7501-commit.sh
> >   t7502-commit.sh
> >   t7509-commit.sh
> 
> t7509 seems to be about the authorship, so it is easy to rename it to
> t7509-commit-authorship or something, but unfortunately I do not see
> unifying theme in any of t750[012].  They test random things and there
> seem to be overlaps.

I read through them and came to the same conclusion.

> Perhaps somebody wants to consolidate these three into one?

I think this falls into my "would be nice if it had been written cleaner
in the first place, but is not worth the time to clean up" category. But
if somebody else is willing to work on it, I have no objection. :)

-Peff

```
