git/list[1] front-page[2] threads[3] people[4] search[5] about
 

[RFC/PATCH 1/2] test git version string

From
Philip Oakley <philipoakley@iee.org>
Date
Apr 14, 2013, 14:27 UTC
Message-ID
<1365949646-1988-2-git-send-email-philipoakley@iee.org>
In-Reply-To
<1365949646-1988-1-git-send-email-philipoakley@iee.org>

The git version string is used in the wild, and in git gui, for capability checking purposes. Test the string format and version X.Y.Z number.

The version string shall be:
* a single line
* less that 80 characters
* start with `git version `
* with a following numeric X.Y.Z version.
The remaining characters are undefined.
Signed-off-by: Philip Oakley <philipoakley@iee.org>
---

Should this be applied to t0000, or another test file? Should the version string be always limited to one line? Should the maximum string length be <80 characters? Is egrep OK, or should I use grep with a longer BRE?

 t/t0000-basic.sh | 8 ++++++++
 1 file changed, 8 insertions(+)
diff --git a/t/t0000-basic.sh b/t/t0000-basic.sh
index cefe33d..052afca 100755
--- a/t/t0000-basic.sh
+++ b/t/t0000-basic.sh
@@ -610,4 +610,12 @@ test_expect_success 'very long name in the index handled sanely' '
 	test $len = 4098
 '
 
+test_expect_success 'git version string X.Y.Z' '
+	git --version >verstring &&
+	test_line_count =  1 verstring &&
+	len=$(wc -c verstring | sed "s/[^0-9]//g") &&
+	test $len -lt  80 &&
+	egrep -q "^git version [0-9]+\.[0-9]+\.[0-9]+.*" verstring
+'
+
 test_done
-- 
1.8.1.msysgit.1
Previous: Philip OakleyNext: Philip Oakley
Message 2 of 11 in “Test the Git version string”
  1. 0/2 Test the Git version stringPhilip Oakley, Apr 14, 2013
  2. 1/2 test git version stringPhilip Oakley, Apr 14, 2013
  3. 2/2 Doc: State the exact git version stringPhilip Oakley, Apr 14, 2013
  4. Junio C HamanoApr 14, 2013
  5. Philip OakleyApr 14, 2013
  6. Junio C HamanoApr 15, 2013
  7. Philip OakleyApr 16, 2013
  8. Junio C HamanoApr 16, 2013
  9. David AguilarApr 16, 2013
  10. Junio C HamanoApr 16, 2013
  11. Philip OakleyApr 16, 2013

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.