@@ -134,32 +134,59 @@ test('route can be ignored using regexp helper', () => {
134134 } ) ;
135135} ) ;
136136
137- test ( 'user-agent is logged' , ( ) =>
138- new Promise ( ( resolve , reject ) => {
139- const logger = loggerFactory ( {
140- streams : [ testWriteStream ( resolve , json => expect ( json . message ) . toMatch ( 'dummy agent' ) ) ] ,
137+ test ( 'user-agent is logged' , ( ) => {
138+ const loggerWrites = jest . fn ( ) ;
139+ const logger = loggerFactory ( {
140+ streams : [
141+ {
142+ stream : new Writable ( {
143+ write : ( chunk , encoding , next ) => {
144+ const json = JSON . parse ( chunk ) ;
145+ expect ( json . message ) . toMatch ( 'dummy agent' ) ;
146+ loggerWrites ( ) ;
147+ next ( ) ;
148+ } ,
149+ } ) ,
150+ } ,
151+ ] ,
152+ } ) ;
153+
154+ const app = express ( ) ;
155+ const request = supertest ( app ) ;
156+ app . use ( logger . express ) ;
157+ return request
158+ . get ( '/' )
159+ . set ( 'User-Agent' , 'dummy agent' )
160+ . then ( ( ) => {
161+ expect ( loggerWrites ) . toBeCalled ( ) ;
141162 } ) ;
163+ } ) ;
142164
143- const app = express ( ) ;
144- const request = supertest ( app ) ;
145- app . use ( logger . express ) ;
146- request
147- . get ( '/test' )
148- . set ( 'User-Agent' , 'dummy agent' )
149- . then ( ( ) => null ) ;
150- } ) ) ;
165+ test ( 'missing user-agent is not logged' , ( ) => {
166+ const loggerWrites = jest . fn ( ) ;
167+ const logger = loggerFactory ( {
168+ streams : [
169+ {
170+ stream : new Writable ( {
171+ write : ( chunk , encoding , next ) => {
172+ const json = JSON . parse ( chunk ) ;
173+ expect ( json . message ) . not . toMatch ( 'undefined' ) ;
174+ loggerWrites ( ) ;
175+ next ( ) ;
176+ } ,
177+ } ) ,
178+ } ,
179+ ] ,
180+ } ) ;
151181
152- test ( 'missing user-agent is not logged' , ( ) =>
153- new Promise ( ( resolve , reject ) => {
154- const logger = loggerFactory ( {
155- streams : [ testWriteStream ( resolve , json => expect ( json . message ) . not . toMatch ( 'undefined' ) ) ] ,
182+ const app = express ( ) ;
183+ const request = supertest ( app ) ;
184+ app . use ( logger . express ) ;
185+ return request
186+ . get ( '/' )
187+ . unset ( 'User-Agent' )
188+ . then ( ( ) => {
189+ expect ( loggerWrites ) . toBeCalled ( ) ;
156190 } ) ;
191+ } ) ;
157192
158- const app = express ( ) ;
159- const request = supertest ( app ) ;
160- app . use ( logger . express ) ;
161- request
162- . get ( '/test' )
163- . unset ( 'User-Agent' )
164- . then ( ( ) => null ) ;
165- } ) ) ;
0 commit comments