mirror of
https://github.com/actix/actix-web.git
synced 2024-11-21 17:11:08 +00:00
fix: service macro comments (#3474)
* fix: service macro comments #3472 * test: service macro comments #3472 * fix: add case for empty tuple seperately * doc: add case for empty tuple seperately * test: move test_services into lib --------- Co-authored-by: Rob Ede <robjtede@icloud.com>
This commit is contained in:
parent
3849cdaa6c
commit
27c07f122b
1 changed files with 37 additions and 0 deletions
|
@ -662,6 +662,7 @@ where
|
|||
/// ```
|
||||
#[macro_export]
|
||||
macro_rules! services {
|
||||
() => {()};
|
||||
($($x:expr),+ $(,)?) => {
|
||||
($($x,)+)
|
||||
}
|
||||
|
@ -870,4 +871,40 @@ mod tests {
|
|||
let req = test::TestRequest::default().to_request();
|
||||
let _res = test::call_service(&app, req).await;
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn define_services_macro_with_multiple_arguments() {
|
||||
let result = services!(1, 2, 3);
|
||||
assert_eq!(result, (1, 2, 3));
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn define_services_macro_with_single_argument() {
|
||||
let result = services!(1);
|
||||
assert_eq!(result, (1,));
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn define_services_macro_with_no_arguments() {
|
||||
let result = services!();
|
||||
let () = result;
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn define_services_macro_with_trailing_comma() {
|
||||
let result = services!(1, 2, 3,);
|
||||
assert_eq!(result, (1, 2, 3));
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn define_services_macro_with_comments_in_arguments() {
|
||||
let result = services!(
|
||||
1, // First comment
|
||||
2, // Second comment
|
||||
3 // Third comment
|
||||
);
|
||||
|
||||
// Assert that comments are ignored and it correctly returns a tuple.
|
||||
assert_eq!(result, (1, 2, 3));
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue