diff options
Diffstat (limited to 'cli/tests/unit/format_error_test.ts')
-rw-r--r-- | cli/tests/unit/format_error_test.ts | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/cli/tests/unit/format_error_test.ts b/cli/tests/unit/format_error_test.ts new file mode 100644 index 000000000..ae7559c82 --- /dev/null +++ b/cli/tests/unit/format_error_test.ts @@ -0,0 +1,33 @@ +// Copyright 2018-2020 the Deno authors. All rights reserved. MIT license. +import { assert, unitTest } from "./test_util.ts"; + +unitTest(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")); +}); + +unitTest(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 Deno.errors.InvalidData); + thrown = true; + } + assert(thrown); +}); |