0
# NullConsole
1
2
NullConsole is a console implementation that suppresses all output completely, useful for silencing console output during test execution or when console output is not desired.
3
4
## Capabilities
5
6
### NullConsole Class
7
8
Console implementation that extends CustomConsole to suppress all console output by overriding all methods as no-ops.
9
10
```typescript { .api }
11
/**
12
* Console implementation that suppresses all output
13
* Extends CustomConsole with all methods overridden as no-ops
14
*/
15
class NullConsole extends CustomConsole {
16
/** All console methods are no-op implementations */
17
}
18
```
19
20
**Usage Examples:**
21
22
```typescript
23
import { NullConsole } from "@jest/console";
24
25
// Create a null console
26
const console = new NullConsole();
27
28
// All of these calls will be silently ignored
29
console.log("This will not appear");
30
console.error("Neither will this");
31
console.warn("Or this warning");
32
console.group("Group title");
33
console.log("Grouped message");
34
console.groupEnd();
35
36
// Useful in testing environments
37
const originalConsole = global.console;
38
global.console = new NullConsole();
39
40
// Run code that produces unwanted console output
41
someNoisyFunction();
42
43
// Restore original console
44
global.console = originalConsole;
45
```
46
47
### Console Methods (No-ops)
48
49
All console methods are overridden to do nothing, providing complete output suppression.
50
51
#### Logging Methods (No-ops)
52
53
```typescript { .api }
54
/** No-op: Does nothing, suppresses all log output */
55
log(): void;
56
57
/** No-op: Does nothing, suppresses all info output */
58
info(): void;
59
60
/** No-op: Does nothing, suppresses all debug output */
61
debug(): void;
62
63
/** No-op: Does nothing, suppresses all warning output */
64
warn(): void;
65
66
/** No-op: Does nothing, suppresses all error output */
67
error(): void;
68
```
69
70
#### Assertion Method (No-op)
71
72
```typescript { .api }
73
/** No-op: Does nothing, suppresses assertion output */
74
assert(): void;
75
```
76
77
#### Object Inspection Methods (No-ops)
78
79
```typescript { .api }
80
/** No-op: Does nothing, suppresses dir output */
81
dir(): void;
82
```
83
84
#### Grouping Methods (No-ops)
85
86
```typescript { .api }
87
/** No-op: Does nothing, suppresses group creation */
88
group(): void;
89
90
/** No-op: Does nothing, suppresses collapsed group creation */
91
groupCollapsed(): void;
92
93
/** No-op: Does nothing, suppresses group ending */
94
groupEnd(): void;
95
```
96
97
#### Timing Methods (No-ops)
98
99
```typescript { .api }
100
/** No-op: Does nothing, suppresses timer start */
101
time(): void;
102
103
/** No-op: Does nothing, suppresses timer end output */
104
timeEnd(): void;
105
106
/** No-op: Does nothing, suppresses timer log output */
107
timeLog(): void;
108
109
/** No-op: Does nothing, suppresses trace output */
110
trace(): void;
111
```
112
113
## Inheritance
114
115
NullConsole inherits from CustomConsole but overrides all console methods to be no-ops. It maintains the same interface but provides complete output suppression.
116
117
```typescript { .api }
118
// NullConsole extends CustomConsole
119
class NullConsole extends CustomConsole {
120
// Inherits constructor from CustomConsole but methods are overridden
121
// All console methods (assert, debug, dir, error, info, log, time, etc.) are no-ops
122
}
123
```