mirror of https://github.com/fafhrd91/actix-net
test for path state after matching
This commit is contained in:
parent
605ec25143
commit
c2f3528f82
|
@ -674,6 +674,10 @@ mod tests {
|
||||||
assert!(!re.is_match("/name/"));
|
assert!(!re.is_match("/name/"));
|
||||||
assert!(!re.is_match("/name~"));
|
assert!(!re.is_match("/name~"));
|
||||||
|
|
||||||
|
let mut path = Path::new("/name");
|
||||||
|
assert!(re.match_path(&mut path));
|
||||||
|
assert_eq!(path.unprocessed(), "");
|
||||||
|
|
||||||
assert_eq!(re.is_prefix_match("/name"), Some(5));
|
assert_eq!(re.is_prefix_match("/name"), Some(5));
|
||||||
assert_eq!(re.is_prefix_match("/name1"), None);
|
assert_eq!(re.is_prefix_match("/name1"), None);
|
||||||
assert_eq!(re.is_prefix_match("/name/"), None);
|
assert_eq!(re.is_prefix_match("/name/"), None);
|
||||||
|
@ -687,6 +691,10 @@ mod tests {
|
||||||
let re = ResourceDef::new("/user/profile");
|
let re = ResourceDef::new("/user/profile");
|
||||||
assert!(re.is_match("/user/profile"));
|
assert!(re.is_match("/user/profile"));
|
||||||
assert!(!re.is_match("/user/profile/profile"));
|
assert!(!re.is_match("/user/profile/profile"));
|
||||||
|
|
||||||
|
let mut path = Path::new("/user/profile");
|
||||||
|
assert!(re.match_path(&mut path));
|
||||||
|
assert_eq!(path.unprocessed(), "");
|
||||||
}
|
}
|
||||||
|
|
||||||
#[test]
|
#[test]
|
||||||
|
@ -700,10 +708,12 @@ mod tests {
|
||||||
let mut path = Path::new("/user/profile");
|
let mut path = Path::new("/user/profile");
|
||||||
assert!(re.match_path(&mut path));
|
assert!(re.match_path(&mut path));
|
||||||
assert_eq!(path.get("id").unwrap(), "profile");
|
assert_eq!(path.get("id").unwrap(), "profile");
|
||||||
|
assert_eq!(path.unprocessed(), "");
|
||||||
|
|
||||||
let mut path = Path::new("/user/1245125");
|
let mut path = Path::new("/user/1245125");
|
||||||
assert!(re.match_path(&mut path));
|
assert!(re.match_path(&mut path));
|
||||||
assert_eq!(path.get("id").unwrap(), "1245125");
|
assert_eq!(path.get("id").unwrap(), "1245125");
|
||||||
|
assert_eq!(path.unprocessed(), "");
|
||||||
|
|
||||||
let re = ResourceDef::new("/v{version}/resource/{id}");
|
let re = ResourceDef::new("/v{version}/resource/{id}");
|
||||||
assert!(re.is_match("/v1/resource/320120"));
|
assert!(re.is_match("/v1/resource/320120"));
|
||||||
|
@ -714,6 +724,7 @@ mod tests {
|
||||||
assert!(re.match_path(&mut path));
|
assert!(re.match_path(&mut path));
|
||||||
assert_eq!(path.get("version").unwrap(), "151");
|
assert_eq!(path.get("version").unwrap(), "151");
|
||||||
assert_eq!(path.get("id").unwrap(), "adage32");
|
assert_eq!(path.get("id").unwrap(), "adage32");
|
||||||
|
assert_eq!(path.unprocessed(), "");
|
||||||
|
|
||||||
let re = ResourceDef::new("/{id:[[:digit:]]{6}}");
|
let re = ResourceDef::new("/{id:[[:digit:]]{6}}");
|
||||||
assert!(re.is_match("/012345"));
|
assert!(re.is_match("/012345"));
|
||||||
|
@ -724,6 +735,7 @@ mod tests {
|
||||||
let mut path = Path::new("/012345");
|
let mut path = Path::new("/012345");
|
||||||
assert!(re.match_path(&mut path));
|
assert!(re.match_path(&mut path));
|
||||||
assert_eq!(path.get("id").unwrap(), "012345");
|
assert_eq!(path.get("id").unwrap(), "012345");
|
||||||
|
assert_eq!(path.unprocessed(), "");
|
||||||
}
|
}
|
||||||
|
|
||||||
#[allow(clippy::cognitive_complexity)]
|
#[allow(clippy::cognitive_complexity)]
|
||||||
|
@ -742,10 +754,12 @@ mod tests {
|
||||||
let mut path = Path::new("/user/profile");
|
let mut path = Path::new("/user/profile");
|
||||||
assert!(re.match_path(&mut path));
|
assert!(re.match_path(&mut path));
|
||||||
assert_eq!(path.get("id").unwrap(), "profile");
|
assert_eq!(path.get("id").unwrap(), "profile");
|
||||||
|
assert_eq!(path.unprocessed(), "");
|
||||||
|
|
||||||
let mut path = Path::new("/user/1245125");
|
let mut path = Path::new("/user/1245125");
|
||||||
assert!(re.match_path(&mut path));
|
assert!(re.match_path(&mut path));
|
||||||
assert_eq!(path.get("id").unwrap(), "1245125");
|
assert_eq!(path.get("id").unwrap(), "1245125");
|
||||||
|
assert_eq!(path.unprocessed(), "");
|
||||||
|
|
||||||
assert!(re.is_match("/v1/resource/320120"));
|
assert!(re.is_match("/v1/resource/320120"));
|
||||||
assert!(!re.is_match("/v/resource/1"));
|
assert!(!re.is_match("/v/resource/1"));
|
||||||
|
@ -878,6 +892,14 @@ mod tests {
|
||||||
assert!(re.is_match("/name1"));
|
assert!(re.is_match("/name1"));
|
||||||
assert!(re.is_match("/name~"));
|
assert!(re.is_match("/name~"));
|
||||||
|
|
||||||
|
let mut path = Path::new("/name");
|
||||||
|
assert!(re.match_path(&mut path));
|
||||||
|
assert_eq!(path.unprocessed(), "");
|
||||||
|
|
||||||
|
let mut path = Path::new("/name/test");
|
||||||
|
assert!(re.match_path(&mut path));
|
||||||
|
assert_eq!(path.unprocessed(), "/test");
|
||||||
|
|
||||||
assert_eq!(re.is_prefix_match("/name"), Some(5));
|
assert_eq!(re.is_prefix_match("/name"), Some(5));
|
||||||
assert_eq!(re.is_prefix_match("/name/"), Some(5));
|
assert_eq!(re.is_prefix_match("/name/"), Some(5));
|
||||||
assert_eq!(re.is_prefix_match("/name/test/test"), Some(5));
|
assert_eq!(re.is_prefix_match("/name/test/test"), Some(5));
|
||||||
|
@ -893,6 +915,10 @@ mod tests {
|
||||||
assert!(re.is_match("/name/"));
|
assert!(re.is_match("/name/"));
|
||||||
assert!(re.is_match("/name/gs"));
|
assert!(re.is_match("/name/gs"));
|
||||||
assert!(!re.is_match("/name"));
|
assert!(!re.is_match("/name"));
|
||||||
|
|
||||||
|
let mut path = Path::new("/name/gs");
|
||||||
|
assert!(re.match_path(&mut path));
|
||||||
|
assert_eq!(path.unprocessed(), "/gs");
|
||||||
}
|
}
|
||||||
|
|
||||||
#[test]
|
#[test]
|
||||||
|
@ -910,11 +936,13 @@ mod tests {
|
||||||
assert!(re.match_path(&mut path));
|
assert!(re.match_path(&mut path));
|
||||||
assert_eq!(&path["name"], "test2");
|
assert_eq!(&path["name"], "test2");
|
||||||
assert_eq!(&path[0], "test2");
|
assert_eq!(&path[0], "test2");
|
||||||
|
assert_eq!(path.unprocessed(), "");
|
||||||
|
|
||||||
let mut path = Path::new("/test2/subpath1/subpath2/index.html");
|
let mut path = Path::new("/test2/subpath1/subpath2/index.html");
|
||||||
assert!(re.match_path(&mut path));
|
assert!(re.match_path(&mut path));
|
||||||
assert_eq!(&path["name"], "test2");
|
assert_eq!(&path["name"], "test2");
|
||||||
assert_eq!(&path[0], "test2");
|
assert_eq!(&path[0], "test2");
|
||||||
|
assert_eq!(path.unprocessed(), "subpath1/subpath2/index.html");
|
||||||
}
|
}
|
||||||
|
|
||||||
#[test]
|
#[test]
|
||||||
|
|
Loading…
Reference in New Issue