Thread (1 message) 1 message, 1 author, 2021-04-09

Re: [PATCH 1/2] test-lib: allow test snippets as here-docs

From: Junio C Hamano <hidden>
Date: 2021-04-09 22:56:35

Jeff King [off-list ref] writes:
+   If <script> is `-` (a single dash), then the script to run is read
+   from stdin. This lets you more easily use single quotes within the
+   script by using a here-doc. For example:
+
+        test_expect_success 'output contains expected string' <<-\EOT
Missing '-'?
+	        grep "this string has 'quotes' in it" output
+	EOT
+
...
+	# start with a newline, to match hanging newline from open-quote style
+	eval "$1=\$LF"
+	local test_line
+	while IFS= read -r test_line
+	do
+		eval "$1=\${$1}\${test_line}\${LF}"
+	done
I wonder if we can do this without relying on "read -r" (which I
distrust, perhaps out of superstition)?  Perhaps by slurping the
whole thing with "$(cat)"?

Thanks.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help