1
1
#![ warn( rust_2018_idioms) ]
2
- extern crate conduit;
3
-
4
2
use conduit:: { BoxError , Handler , RequestExt } ;
5
3
6
4
pub type BeforeResult = Result < ( ) , BoxError > ;
@@ -87,16 +85,18 @@ fn run_afters(
87
85
88
86
#[ cfg( test) ]
89
87
mod tests {
90
- use { AfterResult , AroundMiddleware , BeforeResult , Middleware , MiddlewareBuilder } ;
88
+ use super :: { AfterResult , AroundMiddleware , BeforeResult , Middleware , MiddlewareBuilder } ;
91
89
92
90
use std:: any:: Any ;
93
91
use std:: io;
94
92
use std:: io:: prelude:: * ;
95
93
use std:: net:: SocketAddr ;
96
94
95
+ use conduit_test:: ResponseExt ;
96
+
97
97
use conduit:: {
98
- box_error, static_to_body , vec_to_body , Body , Extensions , Handler , HeaderMap , Host , Method ,
99
- RequestExt , Response , Scheme , StatusCode , TypeMap , Version ,
98
+ box_error, Body , Extensions , Handler , HeaderMap , Host , Method , RequestExt , Response ,
99
+ Scheme , StatusCode , TypeMap , Version ,
100
100
} ;
101
101
102
102
struct RequestSentinel {
@@ -174,7 +174,7 @@ mod tests {
174
174
let e = e. to_string ( ) . into_bytes ( ) ;
175
175
Response :: builder ( )
176
176
. status ( StatusCode :: INTERNAL_SERVER_ERROR )
177
- . body ( vec_to_body ( e) )
177
+ . body ( Body :: from_vec ( e) )
178
178
. map_err ( box_error)
179
179
} )
180
180
}
@@ -192,9 +192,7 @@ mod tests {
192
192
193
193
impl Middleware for NotReached {
194
194
fn after ( & self , _: & mut dyn RequestExt , _: AfterResult ) -> AfterResult {
195
- Response :: builder ( )
196
- . body ( static_to_body ( b"" ) )
197
- . map_err ( box_error)
195
+ Response :: builder ( ) . body ( Body :: empty ( ) ) . map_err ( box_error)
198
196
}
199
197
}
200
198
@@ -229,7 +227,7 @@ mod tests {
229
227
230
228
fn response ( string : String ) -> Response < Body > {
231
229
Response :: builder ( )
232
- . body ( vec_to_body ( string. into_bytes ( ) ) )
230
+ . body ( Body :: from_vec ( string. into_bytes ( ) ) )
233
231
. unwrap ( )
234
232
}
235
233
@@ -255,11 +253,9 @@ mod tests {
255
253
builder. add ( MyMiddleware ) ;
256
254
257
255
let mut req = RequestSentinel :: new ( Method :: GET , "/" ) ;
258
- let mut res = builder. call ( & mut req) . ok ( ) . expect ( "No response" ) ;
256
+ let res = builder. call ( & mut req) . expect ( "No response" ) ;
259
257
260
- let mut s = Vec :: new ( ) ;
261
- res. body_mut ( ) . write_body ( & mut s) . unwrap ( ) ;
262
- assert_eq ! ( s, b"hello" ) ;
258
+ assert_eq ! ( res. into_cow( ) , "hello" . as_bytes( ) ) ;
263
259
}
264
260
265
261
#[ test]
@@ -271,7 +267,7 @@ mod tests {
271
267
builder. add ( NotReached ) ;
272
268
273
269
let mut req = RequestSentinel :: new ( Method :: GET , "/" ) ;
274
- let res = builder. call ( & mut req) . ok ( ) . expect ( "Error not handled" ) ;
270
+ let res = builder. call ( & mut req) . expect ( "Error not handled" ) ;
275
271
276
272
assert_eq ! ( res. status( ) , StatusCode :: INTERNAL_SERVER_ERROR ) ;
277
273
}
@@ -282,12 +278,9 @@ mod tests {
282
278
builder. add ( ErrorRecovery ) ;
283
279
284
280
let mut req = RequestSentinel :: new ( Method :: GET , "/" ) ;
285
- let mut res = builder. call ( & mut req) . ok ( ) . expect ( "Error not handled" ) ;
281
+ let res = builder. call ( & mut req) . expect ( "Error not handled" ) ;
286
282
287
- assert_eq ! ( res. status( ) , StatusCode :: INTERNAL_SERVER_ERROR ) ;
288
- let mut s = Vec :: new ( ) ;
289
- res. body_mut ( ) . write_body ( & mut s) . unwrap ( ) ;
290
- assert_eq ! ( s, b"Error in handler" ) ;
283
+ assert_eq ! ( res. into_cow( ) , "Error in handler" . as_bytes( ) ) ;
291
284
}
292
285
293
286
#[ test]
@@ -297,10 +290,8 @@ mod tests {
297
290
builder. around ( MyAroundMiddleware :: new ( ) ) ;
298
291
299
292
let mut req = RequestSentinel :: new ( Method :: GET , "/" ) ;
300
- let mut res = builder. call ( & mut req) . ok ( ) . expect ( "No response" ) ;
293
+ let res = builder. call ( & mut req) . expect ( "No response" ) ;
301
294
302
- let mut s = Vec :: new ( ) ;
303
- res. body_mut ( ) . write_body ( & mut s) . unwrap ( ) ;
304
- assert_eq ! ( s, b"hello hello" ) ;
295
+ assert_eq ! ( res. into_cow( ) , "hello hello" . as_bytes( ) ) ;
305
296
}
306
297
}
0 commit comments