diff options
-rw-r--r-- | tests/web/server.scm | 28 | ||||
-rw-r--r-- | tissue/web/server.scm | 4 |
2 files changed, 31 insertions, 1 deletions
diff --git a/tests/web/server.scm b/tests/web/server.scm new file mode 100644 index 0000000..25537ab --- /dev/null +++ b/tests/web/server.scm @@ -0,0 +1,28 @@ +;;; tissue --- Text based issue tracker +;;; Copyright © 2023 Arun Isaac <arunisaac@systemreboot.net> +;;; +;;; This file is part of tissue. +;;; +;;; tissue is free software: you can redistribute it and/or modify it +;;; under the terms of the GNU General Public License as published by +;;; the Free Software Foundation, either version 3 of the License, or +;;; (at your option) any later version. +;;; +;;; tissue is distributed in the hope that it will be useful, but +;;; WITHOUT ANY WARRANTY; without even the implied warranty of +;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +;;; General Public License for more details. +;;; +;;; You should have received a copy of the GNU General Public License +;;; along with tissue. If not, see <https://www.gnu.org/licenses/>. + +(import (srfi srfi-64) + (tissue web server)) + +(test-begin "web-server") + +(test-equal "MIME type of file without extension should be application/octet-stream" + '(application/octet-stream) + (mime-type-for-extension "")) + +(test-end "web-server") diff --git a/tissue/web/server.scm b/tissue/web/server.scm index db89bae..e8ee9eb 100644 --- a/tissue/web/server.scm +++ b/tissue/web/server.scm @@ -72,7 +72,9 @@ (define (mime-type-for-extension extension) "Return the mime type for @var{extension}." - (or (assoc-ref %mime-types (string-remove-prefix "." extension)) + (or (assoc-ref %mime-types (if (string-null? extension) + extension + (string-remove-prefix "." extension))) '(application/octet-stream))) (define (404-response request) |