summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFeng Yu <f3n67u@gmail.com>2021-07-29 19:07:25 +0800
committerGitHub <noreply@github.com>2021-07-29 04:07:25 -0700
commit935083d99a9854ccb6808035028fa5d853eb5a98 (patch)
tree4e6afae09b169cd2ad8d5dca092b3c46ea809616
parent4641aacba67d8ad6c80c903c2aa6b2488e3caf49 (diff)
fix(cli): deno doc panics on invalid url (#11536)
-rw-r--r--cli/tests/doc/invalid_url.out4
-rw-r--r--cli/tests/integration/doc_tests.rs6
-rw-r--r--cli/tools/doc.rs2
3 files changed, 11 insertions, 1 deletions
diff --git a/cli/tests/doc/invalid_url.out b/cli/tests/doc/invalid_url.out
new file mode 100644
index 000000000..8be787e90
--- /dev/null
+++ b/cli/tests/doc/invalid_url.out
@@ -0,0 +1,4 @@
+error: invalid URL: invalid domain character
+
+Caused by:
+ invalid domain character
diff --git a/cli/tests/integration/doc_tests.rs b/cli/tests/integration/doc_tests.rs
index d6ddb455e..05da38529 100644
--- a/cli/tests/integration/doc_tests.rs
+++ b/cli/tests/integration/doc_tests.rs
@@ -43,3 +43,9 @@ itest!(deno_doc_types_header_direct {
output: "doc/types_header.out",
http_server: true,
});
+
+itest!(deno_doc_invalid_url {
+ args: "doc https://raw.githubusercontent.com%2Fdyedgreen%2Fdeno-sqlite%2Frework_api%2Fmod.ts",
+ output: "doc/invalid_url.out",
+ exit_code: 1,
+});
diff --git a/cli/tools/doc.rs b/cli/tools/doc.rs
index 6e4d39954..ab9ea127e 100644
--- a/cli/tools/doc.rs
+++ b/cli/tools/doc.rs
@@ -98,7 +98,7 @@ pub async fn print_docs(
get_types(flags.unstable).as_str(),
)
} else {
- let module_specifier = resolve_url_or_path(&source_file).unwrap();
+ let module_specifier = resolve_url_or_path(&source_file)?;
// If the root module has external types, the module graph won't redirect it,
// so instead create a dummy file which exports everything from the actual file being documented.