From 94534c38954e7c58fd2d64803f43c0cc1119a9ff Mon Sep 17 00:00:00 2001 From: Sergio Benitez Date: Tue, 26 Dec 2017 10:10:55 -0800 Subject: [PATCH] List all valid methods in codegen error message. --- codegen/src/parser/route.rs | 3 ++- codegen/tests/ui/route-bad-method.stderr | 10 +++++----- 2 files changed, 7 insertions(+), 6 deletions(-) diff --git a/codegen/src/parser/route.rs b/codegen/src/parser/route.rs index 48b1d722..01182f13 100644 --- a/codegen/src/parser/route.rs +++ b/codegen/src/parser/route.rs @@ -164,8 +164,9 @@ pub fn param_to_ident(ecx: &ExtCtxt, s: Spanned<&str>) -> Option> } fn parse_method(ecx: &ExtCtxt, meta_item: &NestedMetaItem) -> Spanned { - let valid_methods = "valid methods are: `GET`, `PUT`, `POST`, `DELETE`, `PATCH`"; let default_method = dummy_spanned(Method::Get); + let valid_methods = "valid methods are: `GET`, `PUT`, `POST`, `DELETE`, \ + `HEAD`, `PATCH`, `OPTIONS`"; if let Some(word) = meta_item.word() { if let Ok(method) = Method::from_str(&word.name().as_str()) { diff --git a/codegen/tests/ui/route-bad-method.stderr b/codegen/tests/ui/route-bad-method.stderr index d131b9dd..0298a7b9 100644 --- a/codegen/tests/ui/route-bad-method.stderr +++ b/codegen/tests/ui/route-bad-method.stderr @@ -4,7 +4,7 @@ error: 'FIX' is not a valid method 6 | #[route(FIX, "/hello")] | ^^^ | - = help: valid methods are: `GET`, `PUT`, `POST`, `DELETE`, `PATCH` + = help: valid methods are: `GET`, `PUT`, `POST`, `DELETE`, `HEAD`, `PATCH`, `OPTIONS` error: expected a valid HTTP method identifier --> $DIR/route-bad-method.rs:9:9 @@ -12,7 +12,7 @@ error: expected a valid HTTP method identifier 9 | #[route("hi", "/hello")] | ^^^^ | - = help: valid methods are: `GET`, `PUT`, `POST`, `DELETE`, `PATCH` + = help: valid methods are: `GET`, `PUT`, `POST`, `DELETE`, `HEAD`, `PATCH`, `OPTIONS` error: expected a valid HTTP method identifier --> $DIR/route-bad-method.rs:12:9 @@ -20,7 +20,7 @@ error: expected a valid HTTP method identifier 12 | #[route("GET", "/hello")] | ^^^^^ | - = help: valid methods are: `GET`, `PUT`, `POST`, `DELETE`, `PATCH` + = help: valid methods are: `GET`, `PUT`, `POST`, `DELETE`, `HEAD`, `PATCH`, `OPTIONS` error: expected a valid HTTP method identifier --> $DIR/route-bad-method.rs:15:9 @@ -28,7 +28,7 @@ error: expected a valid HTTP method identifier 15 | #[route(120, "/hello")] | ^^^ | - = help: valid methods are: `GET`, `PUT`, `POST`, `DELETE`, `PATCH` + = help: valid methods are: `GET`, `PUT`, `POST`, `DELETE`, `HEAD`, `PATCH`, `OPTIONS` error: 'CONNECT' is not a valid method --> $DIR/route-bad-method.rs:18:9 @@ -36,7 +36,7 @@ error: 'CONNECT' is not a valid method 18 | #[route(CONNECT, "/hello")] | ^^^^^^^ | - = help: valid methods are: `GET`, `PUT`, `POST`, `DELETE`, `PATCH` + = help: valid methods are: `GET`, `PUT`, `POST`, `DELETE`, `HEAD`, `PATCH`, `OPTIONS` error: aborting due to 5 previous errors