summaryrefslogtreecommitdiff
path: root/tests/ccwl.scm
diff options
context:
space:
mode:
authorArun Isaac2023-10-16 17:32:57 +0100
committerArun Isaac2023-10-16 17:32:57 +0100
commitbc6bc78ac3079822dcd5bc51e36983a7470fdc04 (patch)
tree1ef23f4c16adbec7d03f3185e27fb7e217bf0cc0 /tests/ccwl.scm
parent7cc6abe4b5d1af4a05a58705279f6172cf270825 (diff)
downloadccwl-bc6bc78ac3079822dcd5bc51e36983a7470fdc04.tar.gz
ccwl-bc6bc78ac3079822dcd5bc51e36983a7470fdc04.tar.lz
ccwl-bc6bc78ac3079822dcd5bc51e36983a7470fdc04.zip
ccwl: Error out on prefixes that are not strings.
* ccwl/ccwl.scm (run-args): Error out on prefixes that are not strings. * tests/ccwl.scm ("command definitions with non-string prefixes in prefixed inputs must raise a &ccwl-violation condition"): New test.
Diffstat (limited to 'tests/ccwl.scm')
-rw-r--r--tests/ccwl.scm10
1 files changed, 10 insertions, 0 deletions
diff --git a/tests/ccwl.scm b/tests/ccwl.scm
index 7cbb2c0..b26e854 100644
--- a/tests/ccwl.scm
+++ b/tests/ccwl.scm
@@ -264,4 +264,14 @@
(test-assert "tolerate prefixed string arguments in command definitions"
(command #:run "echo" ("-x" "foo")))
+(test-assert "command definitions with non-string prefixes in prefixed inputs must raise a &ccwl-violation condition"
+ (guard (exception
+ (else (and (ccwl-violation? exception)
+ (string=? (formatted-message-format exception)
+ "Invalid prefix ~a. Prefixes must be strings."))))
+ (begin (macroexpand
+ '(command #:inputs (number #:type int)
+ #:run "echo" (-x number)))
+ #f)))
+
(test-end "ccwl")