diff options
| author | Kitson Kelly <me@kitsonkelly.com> | 2020-02-25 06:48:14 +1100 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2020-02-24 14:48:14 -0500 |
| commit | 2b7e28b591a6947f76ddf9a53f49eec8f1accc0f (patch) | |
| tree | cfa8f32e1e5171642fc916d77a397937e901fc48 /cli/js/format_error_test.ts | |
| parent | 5da7c7df1d8649ddb5628b4dc830aa8c23ccb488 (diff) | |
feat: Add Deno.formatDiagnostics (#4032)
Diffstat (limited to 'cli/js/format_error_test.ts')
| -rw-r--r-- | cli/js/format_error_test.ts | 37 |
1 files changed, 37 insertions, 0 deletions
diff --git a/cli/js/format_error_test.ts b/cli/js/format_error_test.ts new file mode 100644 index 000000000..282c2b274 --- /dev/null +++ b/cli/js/format_error_test.ts @@ -0,0 +1,37 @@ +// Copyright 2018-2020 the Deno authors. All rights reserved. MIT license. +import { assert, test } from "./test_util.ts"; + +test(function formatDiagnosticBasic() { + const fixture: Deno.DiagnosticItem[] = [ + { + message: "Example error", + category: Deno.DiagnosticCategory.Error, + sourceLine: "abcdefghijklmnopqrstuv", + lineNumber: 1000, + scriptResourceName: "foo.ts", + startColumn: 1, + endColumn: 2, + code: 4000 + } + ]; + const out = Deno.formatDiagnostics(fixture); + assert(out.includes("Example error")); + assert(out.includes("foo.ts")); +}); + +test(function formatDiagnosticError() { + let thrown = false; + // eslint-disable-next-line @typescript-eslint/no-explicit-any + const bad = ([{ hello: 123 }] as any) as Deno.DiagnosticItem[]; + try { + Deno.formatDiagnostics(bad); + } catch (e) { + assert(e instanceof TypeError); + thrown = true; + } + assert(thrown); +}); + +if (import.meta.main) { + Deno.runTests(); +} |
