deno.land / std@0.224.0 / assert / assert_rejects_test.ts

assert_rejects_test.ts
نووسراو ببینە
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
// Copyright 2018-2024 the Deno authors. All rights reserved. MIT license.import { assert, assertEquals, AssertionError, assertRejects } from "./mod.ts";
Deno.test("assertRejects with return type", async () => { await assertRejects(() => { return Promise.reject(new Error()); });});
Deno.test("assertRejects with synchronous function that throws", async () => { await assertRejects(() => assertRejects(() => { throw new Error(); }) ); await assertRejects( () => assertRejects(() => { throw { wrong: "true" }; }), AssertionError, "Function throws when expected to reject.", );});
Deno.test("assertRejects with PromiseLike", async () => { await assertRejects( () => ({ then() { throw new Error("some error"); }, }), Error, "some error", );});
Deno.test("assertRejects with non-error value rejected and error class", async () => { await assertRejects( () => { return assertRejects( () => { return Promise.reject("Panic!"); }, Error, "Panic!", ); }, AssertionError, "A non-Error object was rejected.", );});
Deno.test("assertRejects with non-error value rejected", async () => { await assertRejects(() => { return Promise.reject(null); }); await assertRejects(() => { return Promise.reject(undefined); });});
Deno.test("assertRejects with error class", async () => { await assertRejects( () => { return Promise.reject(new Error("foo")); }, Error, "foo", );});
Deno.test("assertRejects resolves with caught error", async () => { const error = await assertRejects( () => { return Promise.reject(new Error("foo")); }, ); assert(error instanceof Error); assertEquals(error.message, "foo");});
Deno.test("Assert Throws Async Parent Error", async () => { await assertRejects( () => { return Promise.reject(new AssertionError("Fail!")); }, Error, "Fail!", );});
Deno.test( "Assert Throws Async promise rejected with custom Error", async () => { class CustomError extends Error {} class AnotherCustomError extends Error {} await assertRejects( () => assertRejects( () => Promise.reject(new AnotherCustomError("failed")), CustomError, "fail", ), AssertionError, 'Expected error to be instance of "CustomError", but was "AnotherCustomError".', ); },);
std

Version Info

Tagged at
3 weeks ago