#lang scheme
(require (planet cce/scheme:4:1/planet)
(planet schematics/schemeunit))
(require/expose "../benchmarks/garden-fence.ss"
(encrypt-vec encrypt-ra decrypt-vec decrypt-ra))
(define/provide-test-suite garden-fence-tests
(check-equal? (encrypt-ra "" 5) "")
(check-equal? (encrypt-ra "diesisteinklartext" 2)
"deitikatxissenlret")
(check-equal? (encrypt-ra "diesisteinklartext" 6)
"dkinleiasertittxse")
(check-equal? (encrypt-ra "diesisteinklartext" 18)
"diesisteinklartext")
(check-equal? (decrypt-ra "" 5) "")
(check-equal? (decrypt-ra "deitikatxissenlret" 2)
"diesisteinklartext")
(check-equal? (decrypt-ra "dkinleiasertittxse" 6)
"diesisteinklartext")
(check-equal? (decrypt-ra "diesisteinklartext" 18)
"diesisteinklartext")
(check-equal? (encrypt-vec "" 5) "")
(check-equal? (encrypt-vec "diesisteinklartext" 2)
"deitikatxissenlret")
(check-equal? (encrypt-vec "diesisteinklartext" 6)
"dkinleiasertittxse")
(check-equal? (encrypt-vec "diesisteinklartext" 18)
"diesisteinklartext")
(check-equal? (decrypt-vec "" 5) "")
(check-equal? (decrypt-vec "deitikatxissenlret" 2)
"diesisteinklartext")
(check-equal? (decrypt-vec "dkinleiasertittxse" 6)
"diesisteinklartext")
(check-equal? (decrypt-vec "diesisteinklartext" 18)
"diesisteinklartext"))