-
Notifications
You must be signed in to change notification settings - Fork 13.4k
Expand file tree
/
Copy pathdebugDeprecation.ts
More file actions
98 lines (97 loc) · 3.11 KB
/
Copy pathdebugDeprecation.ts
File metadata and controls
98 lines (97 loc) · 3.11 KB
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
import { deprecate } from "../../deprecatedCompat/deprecate.js";
import * as ts from "../_namespaces/ts.js";
describe("unittests:: debugDeprecation", () => {
let loggingHost: ts.LoggingHost | undefined;
beforeEach(() => {
loggingHost = ts.Debug.loggingHost;
});
afterEach(() => {
ts.Debug.loggingHost = loggingHost;
loggingHost = undefined;
});
describe("deprecateFunction", () => {
it("silent deprecation", () => {
const deprecation = deprecate(ts.noop, {
warnAfter: "3.9",
typeScriptVersion: "3.8",
});
let logWritten = false;
ts.Debug.loggingHost = {
log() {
logWritten = true;
},
};
deprecation();
assert.isFalse(logWritten);
});
it("warning deprecation with warnAfter", () => {
const deprecation = deprecate(ts.noop, {
warnAfter: "3.9",
typeScriptVersion: "3.9",
});
let logWritten = false;
ts.Debug.loggingHost = {
log() {
logWritten = true;
},
};
deprecation();
assert.isTrue(logWritten);
});
it("warning deprecation without warnAfter", () => {
const deprecation = deprecate(ts.noop, {
typeScriptVersion: "3.9",
});
let logWritten = false;
ts.Debug.loggingHost = {
log() {
logWritten = true;
},
};
deprecation();
assert.isTrue(logWritten);
});
it("warning deprecation writes once", () => {
const deprecation = deprecate(ts.noop, {
typeScriptVersion: "3.9",
});
let logWrites = 0;
ts.Debug.loggingHost = {
log() {
logWrites++;
},
};
deprecation();
deprecation();
assert.equal(logWrites, 1);
});
it("error deprecation with errorAfter", () => {
const deprecation = deprecate(ts.noop, {
warnAfter: "3.8",
errorAfter: "3.9",
typeScriptVersion: "3.9",
});
let logWritten = false;
ts.Debug.loggingHost = {
log() {
logWritten = true;
},
};
expect(deprecation).throws();
assert.isFalse(logWritten);
});
it("error deprecation with error", () => {
const deprecation = deprecate(ts.noop, {
error: true,
});
let logWritten = false;
ts.Debug.loggingHost = {
log() {
logWritten = true;
},
};
expect(deprecation).throws();
assert.isFalse(logWritten);
});
});
});