summaryrefslogtreecommitdiff
path: root/cli/file_fetcher.rs
diff options
context:
space:
mode:
authorKitson Kelly <me@kitsonkelly.com>2020-09-14 22:27:44 +1000
committerGitHub <noreply@github.com>2020-09-14 14:27:44 +0200
commita6f34d47222ad7cc40519bd95a58ae773d1fe656 (patch)
tree462618f8013501abcc231ea1316783e173db7ba0 /cli/file_fetcher.rs
parente688a701e20cbed8908b4fb3629a554dc75b4e5b (diff)
refactor: use ParsedModule and improve MediaTypes enum (#7456)
Diffstat (limited to 'cli/file_fetcher.rs')
-rw-r--r--cli/file_fetcher.rs65
1 files changed, 2 insertions, 63 deletions
diff --git a/cli/file_fetcher.rs b/cli/file_fetcher.rs
index 8b3ca46a0..7a885d7b6 100644
--- a/cli/file_fetcher.rs
+++ b/cli/file_fetcher.rs
@@ -552,23 +552,6 @@ impl SourceFileFetcher {
}
}
-pub fn map_file_extension(path: &Path) -> msg::MediaType {
- match path.extension() {
- None => msg::MediaType::Unknown,
- Some(os_str) => match os_str.to_str() {
- Some("ts") => msg::MediaType::TypeScript,
- Some("tsx") => msg::MediaType::TSX,
- Some("js") => msg::MediaType::JavaScript,
- Some("jsx") => msg::MediaType::JSX,
- Some("mjs") => msg::MediaType::JavaScript,
- Some("cjs") => msg::MediaType::JavaScript,
- Some("json") => msg::MediaType::Json,
- Some("wasm") => msg::MediaType::Wasm,
- _ => msg::MediaType::Unknown,
- },
- }
-}
-
// convert a ContentType string into a enumerated MediaType + optional charset
fn map_content_type(
path: &Path,
@@ -600,7 +583,7 @@ fn map_content_type(
"application/json" | "text/json" => msg::MediaType::Json,
"application/wasm" => msg::MediaType::Wasm,
// Handle plain and possibly webassembly
- "text/plain" | "application/octet-stream" => map_file_extension(path),
+ "text/plain" | "application/octet-stream" => msg::MediaType::from(path),
_ => {
debug!("unknown content type: {}", content_type);
msg::MediaType::Unknown
@@ -614,7 +597,7 @@ fn map_content_type(
(media_type, charset)
}
- None => (map_file_extension(path), None),
+ None => (msg::MediaType::from(path), None),
}
}
@@ -1604,50 +1587,6 @@ mod tests {
}
#[test]
- fn test_map_file_extension() {
- assert_eq!(
- map_file_extension(Path::new("foo/bar.ts")),
- msg::MediaType::TypeScript
- );
- assert_eq!(
- map_file_extension(Path::new("foo/bar.tsx")),
- msg::MediaType::TSX
- );
- assert_eq!(
- map_file_extension(Path::new("foo/bar.d.ts")),
- msg::MediaType::TypeScript
- );
- assert_eq!(
- map_file_extension(Path::new("foo/bar.js")),
- msg::MediaType::JavaScript
- );
- assert_eq!(
- map_file_extension(Path::new("foo/bar.jsx")),
- msg::MediaType::JSX
- );
- assert_eq!(
- map_file_extension(Path::new("foo/bar.json")),
- msg::MediaType::Json
- );
- assert_eq!(
- map_file_extension(Path::new("foo/bar.wasm")),
- msg::MediaType::Wasm
- );
- assert_eq!(
- map_file_extension(Path::new("foo/bar.cjs")),
- msg::MediaType::JavaScript
- );
- assert_eq!(
- map_file_extension(Path::new("foo/bar.txt")),
- msg::MediaType::Unknown
- );
- assert_eq!(
- map_file_extension(Path::new("foo/bar")),
- msg::MediaType::Unknown
- );
- }
-
- #[test]
fn test_map_content_type_extension_only() {
// Extension only
assert_eq!(