summaryrefslogtreecommitdiff
path: root/tests/base64.scm
diff options
context:
space:
mode:
authorArun Isaac2020-05-25 13:40:09 +0530
committerArun Isaac2020-05-25 19:59:26 +0530
commit88259287b5b7f84947cd21af174608b57b731fd0 (patch)
tree0a4e816c02196c57aa6d13d666f2532c056974c9 /tests/base64.scm
parent60ad69b8c968e5c4d08056ef68d990e26f950d91 (diff)
downloadguile-email-88259287b5b7f84947cd21af174608b57b731fd0.tar.gz
guile-email-88259287b5b7f84947cd21af174608b57b731fd0.tar.lz
guile-email-88259287b5b7f84947cd21af174608b57b731fd0.zip
tests: Test inputs of different lengths.
* tests/base64.scm ("base64 random bytevector: base64-encode and base64-decode are inverses of each other", "base64 random bytevector: encoded output should not be more than 76 columns wide", "base64 random bytevector: encoded output must only consist of characters from the base64 alphabet"): Test inputs of different lengths. * tests/quoted-printable.scm ("quoted-printable random bytevector: quoted-printable-encode and quoted-printable-decode are inverses of each other", "quoted-printable random bytevector: encoded output should not be more than 76 columns wide", "quoted-printable random bytevector: encoded output must only consist of printable ASCII characters", "q-encoding random bytevector: q-encoding-encode and q-encoding-decode are inverses of each other"): Test inputs of different lengths.
Diffstat (limited to 'tests/base64.scm')
-rw-r--r--tests/base64.scm21
1 files changed, 13 insertions, 8 deletions
diff --git a/tests/base64.scm b/tests/base64.scm
index c200f81..504acbf 100644
--- a/tests/base64.scm
+++ b/tests/base64.scm
@@ -56,18 +56,23 @@ ZSBzaG9ydCB2ZWhlbWVuY2Ugb2YgYW55IGNhcm5hbCBwbGVhc3VyZS4=")
(base64-encode
(string->bytevector decoded-text charset)))))
-(let ((x (random-bytevector 1000)))
- (test-equal "base64 random bytevector: base64-encode and base64-decode are inverses of each other"
- (base64-decode (base64-encode x))
- x))
+(test-assert "base64 random bytevector: base64-encode and base64-decode are inverses of each other"
+ (every (lambda (len)
+ (let ((x (random-bytevector len)))
+ (equal? x (base64-decode (base64-encode x)))))
+ (iota 1000)))
(test-assert "base64 random bytevector: encoded output should not be more than 76 columns wide"
- (each-line-has-a-maximum-of-76-characters?
- (base64-encode (random-bytevector 1000))))
+ (every (lambda (len)
+ (each-line-has-a-maximum-of-76-characters?
+ (base64-encode (random-bytevector len))))
+ (iota 1000)))
(test-assert "base64 random bytevector: encoded output must only consist of characters from the base64 alphabet"
- (string-has-only-valid-base64-characters?
- (base64-encode (random-bytevector 1000))))
+ (every (lambda (len)
+ (string-has-only-valid-base64-characters?
+ (base64-encode (random-bytevector len))))
+ (iota 1000)))
(test-equal "base64 decoding should ignore invalid characters"
(bytevector->string (base64-decode "..TWFu,") "utf-8")