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

[PATCH v3 4/7] completion: add __gitcomp_nl tests

From
Felipe Contreras <felipe.contreras@gmail.com>
Date
Apr 10, 2013, 06:57 UTC
Message-ID
<1365577077-12648-5-git-send-email-felipe.contreras@gmail.com>
In-Reply-To
<1365577077-12648-1-git-send-email-felipe.contreras@gmail.com>
Original patch by SZEDER Gábor.
Signed-off-by: Felipe Contreras <felipe.contreras@gmail.com>
---
 t/t9902-completion.sh | 60 +++++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 60 insertions(+)
diff --git a/t/t9902-completion.sh b/t/t9902-completion.sh
index 99d5c01..b752f4d 100755
--- a/t/t9902-completion.sh
+++ b/t/t9902-completion.sh
@@ -105,6 +105,23 @@ test_gitcomp ()
 	test_cmp expected out
 }
 
+# Test __gitcomp_nl
+# Arguments are:
+# 1: current word (cur)
+# -: the rest are passed to __gitcomp_nl
+test_gitcomp_nl ()
+{
+	local -a COMPREPLY &&
+	sed -e 's/Z$//' >expected &&
+	cur="$1" &&
+	shift &&
+	__gitcomp_nl "$@" &&
+	print_comp &&
+	test_cmp expected out
+}
+
+invalid_variable_name='${foo.bar}'
+
 test_expect_success '__gitcomp - trailing space - options' '
 	test_gitcomp "--re" "--dry-run --reuse-message= --reedit-message=
 		--reset-author" <<-EOF
@@ -148,6 +165,49 @@ test_expect_success '__gitcomp - suffix' '
 	EOF
 '
 
+test_expect_failure '__gitcomp - doesnt fail because of invalid variable name' '
+	__gitcomp "$invalid_variable_name"
+'
+
+read -r -d "" refs <<-\EOF
+maint
+master
+next
+pu
+EOF
+
+test_expect_success '__gitcomp_nl - trailing space' '
+	test_gitcomp_nl "m" "$refs" <<-EOF
+	maint Z
+	master Z
+	EOF
+'
+
+test_expect_success '__gitcomp_nl - prefix' '
+	test_gitcomp_nl "--fixup=m" "$refs" "--fixup=" "m" <<-EOF
+	--fixup=maint Z
+	--fixup=master Z
+	EOF
+'
+
+test_expect_success '__gitcomp_nl - suffix' '
+	test_gitcomp_nl "branch.ma" "$refs" "branch." "ma" "." <<-\EOF
+	branch.maint.Z
+	branch.master.Z
+	EOF
+'
+
+test_expect_success '__gitcomp_nl - no suffix' '
+	test_gitcomp_nl "ma" "$refs" "" "ma" "" <<-\EOF
+	maintZ
+	masterZ
+	EOF
+'
+
+test_expect_failure '__gitcomp_nl - doesnt fail because of invalid variable name' '
+	__gitcomp_nl "$invalid_variable_name"
+'
+
 test_expect_success 'basic' '
 	run_completion "git " &&
 	# built-in
-- 
1.8.2.1
Previous: Junio C HamanoNext: Felipe Contreras
Message 9 of 20 in “completion: reorg and performance improvements”
  1. 0/7 completion: reorg and performance improvementsFelipe Contreras, Apr 10, 2013
  2. 1/7 completion: trivial test improvementFelipe Contreras, Apr 10, 2013
  3. 2/7 completion: get rid of empty COMPREPLY assignmentsFelipe Contreras, Apr 10, 2013
  4. Eric SunshineApr 10, 2013
  5. 3/7 completion: add new __gitcompadd helperFelipe Contreras, Apr 10, 2013
  6. Junio C HamanoApr 12, 2013
  7. Felipe ContrerasApr 12, 2013
  8. Junio C HamanoApr 12, 2013
  9. 4/7 completion: add __gitcomp_nl testsFelipe Contreras, Apr 10, 2013
  10. 5/7 completion: get rid of compgenFelipe Contreras, Apr 10, 2013
  11. Eric SunshineApr 10, 2013
  12. Felipe ContrerasApr 10, 2013
  13. John KeepingApr 10, 2013
  14. Junio C HamanoApr 12, 2013
  15. 6/7 completion: get rid of __gitcomp_1Felipe Contreras, Apr 10, 2013
  16. Eric SunshineApr 10, 2013
  17. John KeepingApr 10, 2013
  18. Eric SunshineApr 10, 2013
  19. 7/7 completion: small optimizationFelipe Contreras, Apr 10, 2013
  20. Junio C HamanoApr 12, 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.