diff --git a/tests/tree.rs b/tests/tree.rs index 0cd42cd..373245c 100644 --- a/tests/tree.rs +++ b/tests/tree.rs @@ -3,7 +3,9 @@ use rand::seq::SliceRandom; #[test] fn statics() { - const ROUTES: [&str; 11] = [ + const ROUTES: [&str; 13] = [ + "", + "/", "/hi", "/contact", "/co", @@ -128,6 +130,19 @@ fn single_named_parameter() { } } +#[test] +fn repeated_single_named_param() { + let mut tree = PathTree::new(); + + tree.insert("/users/:id", 0); + tree.insert("/users/:user_id", 1); + + let r = tree.find("/users/gordon"); + let path = r.unwrap(); + assert_eq!(*path.value, 1); + assert_eq!(path.params(), vec![("user_id", "gordon")]); +} + #[test] fn static_and_named_parameter() { // Pattern: /a/b/c