in yaml_test_runner/src/step/skip.rs [56:90]
fn parse_version_requirements(version: &Option<String>) -> Option<semver::VersionReq> {
if let Some(v) = version {
if v.to_lowercase() == "all" {
Some(semver::VersionReq::STAR)
} else {
lazy_static! {
static ref VERSION_REGEX: Regex =
Regex::new(r"^([\w\.]+)?\s*?\-\s*?([\w\.]+)?$").unwrap();
}
if let Some(c) = VERSION_REGEX.captures(v) {
match (c.get(1), c.get(2)) {
(Some(start), Some(end)) => Some(
semver::VersionReq::parse(
format!(">={},<={}", start.as_str(), end.as_str()).as_ref(),
)
.unwrap(),
),
(Some(start), None) => Some(
semver::VersionReq::parse(format!(">={}", start.as_str()).as_ref())
.unwrap(),
),
(None, Some(end)) => Some(
semver::VersionReq::parse(format!("<={}", end.as_str()).as_ref())
.unwrap(),
),
(None, None) => None,
}
} else {
None
}
}
} else {
None
}
}