diff options
author | Hugo Hörnquist <hugo@lysator.liu.se> | 2023-10-24 19:42:34 +0200 |
---|---|---|
committer | Hugo Hörnquist <hugo@lysator.liu.se> | 2023-10-24 19:42:34 +0200 |
commit | 70aaf3e98ef07e2e5884701303e6986fb4fe0be1 (patch) | |
tree | 033894586723d271fa55ad59f2c85d295ec14000 /tests/unit | |
parent | Repair webdav-propfind tests. (diff) | |
download | calp-70aaf3e98ef07e2e5884701303e6986fb4fe0be1.tar.gz calp-70aaf3e98ef07e2e5884701303e6986fb4fe0be1.tar.xz |
Add tests for encode-query-parameters.
Diffstat (limited to '')
-rw-r--r-- | tests/unit/web-util/web-query.scm | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/tests/unit/web-util/web-query.scm b/tests/unit/web-util/web-query.scm index ec20b0c1..c82259bc 100644 --- a/tests/unit/web-util/web-query.scm +++ b/tests/unit/web-util/web-query.scm @@ -1,7 +1,7 @@ (define-module (test web-query) :use-module (srfi srfi-64) :use-module (srfi srfi-88) - :use-module ((web query) :select (parse-query))) + :use-module ((web query) :select (parse-query encode-query-parameters))) (test-equal "Empty query gives empty assoc list" '() (parse-query "")) @@ -34,4 +34,14 @@ '(key: "=") (parse-query "key==")) +(test-group "encode-query-parameters" + (test-equal "Null case" "" (encode-query-parameters '())) + (test-equal "Single simple" "a=10" (encode-query-parameters '((a . 10)))) + (test-equal "Multi simple" "a=10&b=20" (encode-query-parameters '((a . 10) (b . 20)))) + (test-equal "Strings are `write' encoded" "a=%22Hello%22" (encode-query-parameters '((a . "Hello")))) + (test-equal "Strings are URI encoded" "a=%22Hello%20World%22" (encode-query-parameters '((a . "Hello World")))) + (test-equal "Symbols are `write' and URI encoded" + "a=%23%7BHello%20World%7D%23" (encode-query-parameters `((a . ,(string->symbol "Hello World")))))) + + '((web query)) |