diff options
author | Lars Wirzenius <liw@liw.fi> | 2021-11-07 07:33:08 +0000 |
---|---|---|
committer | Lars Wirzenius <liw@liw.fi> | 2021-11-07 07:33:08 +0000 |
commit | 24f4aeebfeffd5375f8115e90e7c72824c7edf89 (patch) | |
tree | 45fa73ded222918d696d1b417fcc726456e8f2a9 /src/parser.rs | |
parent | 498a88aaf124a355fb59dc0f51284ded0b8583a6 (diff) | |
parent | 86cc978aea3edb3c8b1b8674b9d24af0dc0db7cf (diff) | |
download | roadmap-24f4aeebfeffd5375f8115e90e7c72824c7edf89.tar.gz |
Merge branch 'cleanups' into 'main'
clean up code so it doesn't have warnings with current toolchain
See merge request larswirzenius/roadmap!2
Diffstat (limited to 'src/parser.rs')
-rw-r--r-- | src/parser.rs | 43 |
1 files changed, 16 insertions, 27 deletions
diff --git a/src/parser.rs b/src/parser.rs index 7602b94..d83f618 100644 --- a/src/parser.rs +++ b/src/parser.rs @@ -1,4 +1,3 @@ -use serde_yaml; use serde_yaml::Value; use std::collections::HashMap; @@ -26,13 +25,13 @@ pub fn from_yaml(yaml: &str) -> RoadmapResult<Roadmap> { fn step_from_value(name: &str, value: &Value) -> RoadmapResult<Step> { match value { Value::Mapping(_) => { - let label = parse_label(&value); - let status = parse_status(&value)?; + let label = parse_label(value); + let status = parse_status(value)?; let mut step = Step::new(name, label); step.set_status(status); - for depname in parse_depends(&value)?.iter() { + for depname in parse_depends(value)?.iter() { step.add_dependency(depname); } @@ -70,7 +69,7 @@ fn parse_label(map: &Value) -> &str { } // Get status string from a Mapping element. Default to unknown status. -fn parse_status<'a>(map: &'a Value) -> RoadmapResult<Status> { +fn parse_status(map: &Value) -> RoadmapResult<Status> { let text = parse_string("status", map); match Status::from_text(text) { Some(status) => Ok(status), @@ -94,46 +93,36 @@ mod tests { #[test] fn yaml_is_empty() { - let r = from_yaml(""); - match r { - Ok(_) => panic!("expected a parse error"), - _ => (), + if from_yaml("").is_ok() { + panic!("expected a parse error"); } } #[test] fn yaml_is_list() { - let r = from_yaml("[]"); - match r { - Ok(_) => panic!("expected a parse error"), - _ => (), + if from_yaml("[]").is_ok() { + panic!("expected a parse error"); } } #[test] fn yaml_map_entries_not_maps() { - let r = from_yaml("foo: []"); - match r { - Ok(_) => panic!("expected a parse error"), - _ => (), + if from_yaml("foo: []").is_ok() { + panic!("expected a parse error"); } } #[test] fn yaml_unknown_dep() { - let r = from_yaml("foo: {depends: [bar]}"); - match r { - Ok(_) => panic!("expected a parse error"), - _ => (), + if from_yaml("foo: {depends: [bar]}").is_ok() { + panic!("expected a parse error"); } } #[test] fn yaml_unknown_status() { - let r = from_yaml(r#"foo: {status: "bar"}"#); - match r { - Ok(_) => panic!("expected a parse error"), - _ => (), + if from_yaml(r#"foo: {status: "bar"}"#).is_ok() { + panic!("expected a parse error"); } } @@ -159,8 +148,8 @@ second: let first = roadmap.get_step("first").unwrap(); assert_eq!(first.name(), "first"); assert_eq!(first.label(), "the first step"); - let deps: Vec<&str> = first.dependencies().collect(); - assert_eq!(deps.len(), 0); + let deps = first.dependencies().count(); + assert_eq!(deps, 0); let second = roadmap.get_step("second").unwrap(); assert_eq!(second.name(), "second"); |