response.scm 1009 B

123456789101112131415161718192021222324252627
  1. (use-modules (srfi srfi-64)
  2. (gemini response))
  3. (test-begin "gemini-response")
  4. (test-group "build-gemini-response"
  5. (let ((rsp (build-gemini-response #:status 20
  6. #:meta "text/gemini; charset=utf-8")))
  7. (test-eq 20 (gemini-response-status rsp))
  8. (test-equal "text/gemini; charset=utf-8" (gemini-response-meta rsp))))
  9. (test-group "read-gemini-response"
  10. (let* ((data "20 text/gemini; charset=utf-8\r\n")
  11. (rsp (call-with-input-string data read-gemini-response)))
  12. (test-eq 20 (gemini-response-status rsp))
  13. (test-equal "text/gemini; charset=utf-8" (gemini-response-meta rsp))))
  14. (test-group "write-gemini-request"
  15. (let* ((rsp (build-gemini-response #:status 20
  16. #:meta "text/gemini; charset=utf-8"))
  17. (data (call-with-output-string
  18. (lambda (port)
  19. (write-gemini-response rsp port)))))
  20. (test-equal "20 text/gemini; charset=utf-8\r\n" data)))
  21. (test-end)