aboutsummaryrefslogtreecommitdiff
path: root/tests/ccwl.scm
diff options
context:
space:
mode:
Diffstat (limited to 'tests/ccwl.scm')
-rw-r--r--tests/ccwl.scm32
1 files changed, 32 insertions, 0 deletions
diff --git a/tests/ccwl.scm b/tests/ccwl.scm
index d8100c5..117f93f 100644
--- a/tests/ccwl.scm
+++ b/tests/ccwl.scm
@@ -285,4 +285,36 @@
#:run "cat" file))
#f)))
+(test-assert "inputs with #:other parameters that fail to evaluate must raise a &ccwl-violation condition"
+ (guard (exception
+ (else (and (ccwl-violation? exception)
+ (string=? (formatted-message-format exception)
+ "#:other parameter not serializable to YAML"))))
+ (begin (macroexpand
+ '(command #:inputs (file #:type File
+ #:other '((secondaryFiles . ".fai")))
+ #:run "cat" file))
+ #f)))
+
+(test-assert "outputs with #:other parameters that fail to evaluate must raise a &ccwl-violation condition"
+ (guard (exception
+ (else (and (ccwl-violation? exception)
+ (string=? (formatted-message-format exception)
+ "#:other parameter not serializable to YAML"))))
+ (begin (macroexpand
+ '(command #:outputs (file #:type File
+ #:other '((secondaryFiles . ".fai")))
+ #:run "cat" file))
+ #f)))
+
+(test-assert "commands with #:other parameters that fail to evaluate must raise a &ccwl-violation condition"
+ (guard (exception
+ (else (and (ccwl-violation? exception)
+ (string=? (formatted-message-format exception)
+ "#:other parameter not serializable to YAML"))))
+ (begin (macroexpand
+ '(command #:run "cat" file
+ #:other '((secondaryFiles . ".fai"))))
+ #f)))
+
(test-end "ccwl")