File tree Expand file tree Collapse file tree 1 file changed +30
-0
lines changed Expand file tree Collapse file tree 1 file changed +30
-0
lines changed Original file line number Diff line number Diff line change @@ -63,6 +63,36 @@ describe("createApp", () => {
63
63
// Cleanup
64
64
server . close ( )
65
65
} )
66
+
67
+ it ( "should reject errors" , async ( ) => {
68
+ const port = 2
69
+ const defaultArgs = await setDefaults ( {
70
+ port,
71
+ _ : [ ] ,
72
+ } )
73
+
74
+ // This looks funky, but that's because createApp
75
+ // returns an array like [app, wsApp, server]
76
+ // We only need server which is at index 2
77
+ // we do it this way so ESLint is happy that we're
78
+ // have no declared variables not being used
79
+ async function masterBall ( ) {
80
+ const app = await createApp ( defaultArgs )
81
+ const server = app [ 2 ]
82
+
83
+ const testError = new Error ( "Test error" )
84
+ // Emitting error events on servers
85
+ // https://stackoverflow.com/a/33872506/3015595
86
+ server . emit ( "error" , testError )
87
+ // expect(spy).toHaveBeenCalledTimes(1)
88
+ // expect(spy).toHaveBeenCalledWith(`http server error: ${testError.message} ${testError.stack}`)
89
+
90
+ // Cleanup
91
+ server . close ( )
92
+ }
93
+
94
+ expect ( ( ) => masterBall ( ) ) . rejects . toThrow ( `listen EACCES: permission denied 127.0.0.1:${ port } ` )
95
+ } )
66
96
} )
67
97
68
98
describe ( "ensureAddress" , ( ) => {
You can’t perform that action at this time.
0 commit comments