@@ -152,28 +152,40 @@ mod tests {
152
152
}
153
153
154
154
#[ test]
155
- fn as_conduit_handler ( ) {
156
- let mut router = RouteBuilder :: new ( ) ;
157
- router. post ( "/posts/:id" , handler1) ;
158
- router. get ( "/posts/:id" , handler1) ;
159
-
155
+ fn basic_get ( ) {
156
+ let router = test_router ( ) ;
160
157
let mut req = RequestSentinel :: new ( conduit:: Get , "/posts/1" ) ;
161
158
let mut res = router. call ( & mut req) . ok ( ) . expect ( "No response" ) ;
162
159
163
160
assert_eq ! ( res. status, ( 200 , "OK" ) ) ;
164
161
assert_eq ! ( res. body. read_to_str( ) . unwrap( ) , "1, Get" . to_str( ) ) ;
162
+ }
165
163
164
+ #[ test]
165
+ fn basic_post ( ) {
166
+ let router = test_router ( ) ;
166
167
let mut req = RequestSentinel :: new ( conduit:: Post , "/posts/10" ) ;
167
168
let mut res = router. call ( & mut req) . ok ( ) . expect ( "No response" ) ;
168
169
169
170
assert_eq ! ( res. status, ( 200 , "OK" ) ) ;
170
171
assert_eq ! ( res. body. read_to_str( ) . unwrap( ) , "10, Post" . to_str( ) ) ;
172
+ }
171
173
174
+ #[ test]
175
+ fn nonexistent_route ( ) {
176
+ let router = test_router ( ) ;
172
177
let mut req = RequestSentinel :: new ( conduit:: Post , "/nonexistent" ) ;
173
178
router. call ( & mut req) . err ( ) . expect ( "No response" ) ;
174
179
}
175
180
176
- fn handler1 ( req : & mut conduit:: Request ) -> Result < conduit:: Response , ( ) > {
181
+ fn test_router ( ) -> RouteBuilder {
182
+ let mut router = RouteBuilder :: new ( ) ;
183
+ router. post ( "/posts/:id" , test_handler) ;
184
+ router. get ( "/posts/:id" , test_handler) ;
185
+ router
186
+ }
187
+
188
+ fn test_handler ( req : & mut conduit:: Request ) -> Result < conduit:: Response , ( ) > {
177
189
let mut res = vec ! ( ) ;
178
190
res. push ( req. params ( ) [ "id" ] ) ;
179
191
res. push ( format ! ( "{}" , req. method( ) ) ) ;
0 commit comments