#lang racket/base (require rackunit "../main.rkt") (check-equal? (mimetype-for-ext 'html) "text/html") (check-equal? (mimetype-for-ext "MP3") "audio/mpeg") (check-equal? (mimetype-for-ext ".FLAC") "audio/flac") (check-equal? (mimetype-for-ext "c:/music/track.MP4") "video/mp4") (check-equal? (mimetype-for-ext "c:\\music\\track.MP4") "video/mp4") (check-equal? (mimetype-for-ext (string->path "/music/track.opus")) "audio/ogg") (check-equal? (mimetype-for-ext "track.mp4" #:context 'video) "video/mp4") (check-equal? (mimetype-for-ext "track.mp4" #:context 'audio) "audio/mp4") (check-equal? (mimetype-for-ext "track.mp4" #:context 'application) "application/mp4") (check-equal? (mimetype-for-ext "track.mp4" #:context 'image) "application/octet-stream") (check-equal? (mimetype-for-ext "unknown") "application/octet-stream") (check-equal? (mimetype-for-ext "unknown" #:default "text/plain") "text/plain") (check-equal? (mimetype-for-ext "xml") "application/xml") (check-equal? (mimetype-for-ext "m4a") "audio/mp4") (check-equal? (mimetype-for-ext "mka") "audio/matroska") (check-equal? (mimetype-for-ext "mkv") "video/matroska") (check-equal? (mimetype-for-ext "ogg") "audio/ogg") (check-equal? (mimetype-for-ext "md") "text/markdown") (check-equal? (mimetype-for-ext "js") "text/javascript") (check-equal? (mimetype-for-ext "woff2") "font/woff2") (check-equal? (mimetype-for-ext "heic") "image/heic") (check-equal? (mimetype-for-ext "jxl") "image/jxl") (check-equal? (mimetype-for-ext "zst") "application/zstd") (check-equal? (mimetype-for-ext "mov") "video/quicktime") (check-equal? (mimetype-for-ext "tif") "image/tiff") (check-equal? (mimetype-for-ext "htm") "text/html") (check-equal? (mimetype-for-ext "m2ts") "video/mp2t") (check-equal? (mimetype-for-ext "123") "application/vnd.lotus-1-2-3") (check-equal? (mimetype-for-ext "java") "text/x-java-source") (check-equal? (mimetype-for-ext "ccxml") "application/ccxml+xml")