diff options
Diffstat (limited to 'unit-tests/varmod-quote.mk')
-rw-r--r-- | unit-tests/varmod-quote.mk | 16 |
1 files changed, 14 insertions, 2 deletions
diff --git a/unit-tests/varmod-quote.mk b/unit-tests/varmod-quote.mk index adf736048e76..3ab86e6b2dd3 100644 --- a/unit-tests/varmod-quote.mk +++ b/unit-tests/varmod-quote.mk @@ -1,9 +1,21 @@ -# $NetBSD: varmod-quote.mk,v 1.2 2020/08/16 14:25:16 rillig Exp $ +# $NetBSD: varmod-quote.mk,v 1.3 2020/10/29 19:07:45 rillig Exp $ # # Tests for the :Q variable modifier, which quotes the variable value # to be used in a shell program. -# TODO: Implementation +# Any characters that might be interpreted by the shell are escaped. +# The set of escaped characters is the same, no matter which shell (sh, csh, +# ksh) is in effect. +.if ${:Ua b c:Q} != "a\\ b\\ c" +. error +.endif + +# The quote modifier only applies if the whole modifier name is "Q". +# There is no "Qshell" or "Qawk" or "Qregex" or even "Qhtml" variant. +# All strings except the plain "Q" are interpreted as SysV modifier. +.if ${:Ua.Qshell:Qshell=replaced} != "a.replaced" +. error +.endif all: @:; |