liblog: Remove all uses of `~str` from `liblog`
This commit is contained in:
parent
e786a745b5
commit
8a1aaac396
|
@ -13,7 +13,7 @@ use std::cmp;
|
|||
|
||||
#[deriving(Show, Clone)]
|
||||
pub struct LogDirective {
|
||||
pub name: Option<~str>,
|
||||
pub name: Option<StrBuf>,
|
||||
pub level: u32,
|
||||
}
|
||||
|
||||
|
@ -64,7 +64,7 @@ pub fn parse_logging_spec(spec: &str) -> Vec<LogDirective> {
|
|||
}
|
||||
};
|
||||
dirs.push(LogDirective {
|
||||
name: name.map(|s| s.to_owned()),
|
||||
name: name.map(|s| s.to_strbuf()),
|
||||
level: log_level,
|
||||
});
|
||||
}
|
||||
|
@ -80,13 +80,13 @@ mod tests {
|
|||
let dirs = parse_logging_spec("crate1::mod1=1,crate1::mod2,crate2=4");
|
||||
let dirs = dirs.as_slice();
|
||||
assert_eq!(dirs.len(), 3);
|
||||
assert_eq!(dirs[0].name, Some("crate1::mod1".to_owned()));
|
||||
assert_eq!(dirs[0].name, Some("crate1::mod1".to_strbuf()));
|
||||
assert_eq!(dirs[0].level, 1);
|
||||
|
||||
assert_eq!(dirs[1].name, Some("crate1::mod2".to_owned()));
|
||||
assert_eq!(dirs[1].name, Some("crate1::mod2".to_strbuf()));
|
||||
assert_eq!(dirs[1].level, ::MAX_LOG_LEVEL);
|
||||
|
||||
assert_eq!(dirs[2].name, Some("crate2".to_owned()));
|
||||
assert_eq!(dirs[2].name, Some("crate2".to_strbuf()));
|
||||
assert_eq!(dirs[2].level, 4);
|
||||
}
|
||||
|
||||
|
@ -96,7 +96,7 @@ mod tests {
|
|||
let dirs = parse_logging_spec("crate1::mod1=1=2,crate2=4");
|
||||
let dirs = dirs.as_slice();
|
||||
assert_eq!(dirs.len(), 1);
|
||||
assert_eq!(dirs[0].name, Some("crate2".to_owned()));
|
||||
assert_eq!(dirs[0].name, Some("crate2".to_strbuf()));
|
||||
assert_eq!(dirs[0].level, 4);
|
||||
}
|
||||
|
||||
|
@ -106,7 +106,7 @@ mod tests {
|
|||
let dirs = parse_logging_spec("crate1::mod1=noNumber,crate2=4");
|
||||
let dirs = dirs.as_slice();
|
||||
assert_eq!(dirs.len(), 1);
|
||||
assert_eq!(dirs[0].name, Some("crate2".to_owned()));
|
||||
assert_eq!(dirs[0].name, Some("crate2".to_strbuf()));
|
||||
assert_eq!(dirs[0].level, 4);
|
||||
}
|
||||
|
||||
|
@ -116,7 +116,7 @@ mod tests {
|
|||
let dirs = parse_logging_spec("crate1::mod1=wrong,crate2=warn");
|
||||
let dirs = dirs.as_slice();
|
||||
assert_eq!(dirs.len(), 1);
|
||||
assert_eq!(dirs[0].name, Some("crate2".to_owned()));
|
||||
assert_eq!(dirs[0].name, Some("crate2".to_strbuf()));
|
||||
assert_eq!(dirs[0].level, ::WARN);
|
||||
}
|
||||
|
||||
|
@ -128,7 +128,7 @@ mod tests {
|
|||
assert_eq!(dirs.len(), 2);
|
||||
assert_eq!(dirs[0].name, None);
|
||||
assert_eq!(dirs[0].level, 2);
|
||||
assert_eq!(dirs[1].name, Some("crate2".to_owned()));
|
||||
assert_eq!(dirs[1].name, Some("crate2".to_strbuf()));
|
||||
assert_eq!(dirs[1].level, 4);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -307,7 +307,7 @@ fn enabled(level: u32, module: &str,
|
|||
// Search for the longest match, the vector is assumed to be pre-sorted.
|
||||
for directive in iter.rev() {
|
||||
match directive.name {
|
||||
Some(ref name) if !module.starts_with(*name) => {},
|
||||
Some(ref name) if !module.starts_with(name.as_slice()) => {},
|
||||
Some(..) | None => {
|
||||
return level <= directive.level
|
||||
}
|
||||
|
@ -362,8 +362,16 @@ mod tests {
|
|||
|
||||
#[test]
|
||||
fn match_full_path() {
|
||||
let dirs = [LogDirective { name: Some("crate2".to_owned()), level: 3 },
|
||||
LogDirective { name: Some("crate1::mod1".to_owned()), level: 2 }];
|
||||
let dirs = [
|
||||
LogDirective {
|
||||
name: Some("crate2".to_strbuf()),
|
||||
level: 3
|
||||
},
|
||||
LogDirective {
|
||||
name: Some("crate1::mod1".to_strbuf()),
|
||||
level: 2
|
||||
}
|
||||
];
|
||||
assert!(enabled(2, "crate1::mod1", dirs.iter()));
|
||||
assert!(!enabled(3, "crate1::mod1", dirs.iter()));
|
||||
assert!(enabled(3, "crate2", dirs.iter()));
|
||||
|
@ -372,39 +380,49 @@ mod tests {
|
|||
|
||||
#[test]
|
||||
fn no_match() {
|
||||
let dirs = [LogDirective { name: Some("crate2".to_owned()), level: 3 },
|
||||
LogDirective { name: Some("crate1::mod1".to_owned()), level: 2 }];
|
||||
let dirs = [
|
||||
LogDirective { name: Some("crate2".to_strbuf()), level: 3 },
|
||||
LogDirective { name: Some("crate1::mod1".to_strbuf()), level: 2 }
|
||||
];
|
||||
assert!(!enabled(2, "crate3", dirs.iter()));
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn match_beginning() {
|
||||
let dirs = [LogDirective { name: Some("crate2".to_owned()), level: 3 },
|
||||
LogDirective { name: Some("crate1::mod1".to_owned()), level: 2 }];
|
||||
let dirs = [
|
||||
LogDirective { name: Some("crate2".to_strbuf()), level: 3 },
|
||||
LogDirective { name: Some("crate1::mod1".to_strbuf()), level: 2 }
|
||||
];
|
||||
assert!(enabled(3, "crate2::mod1", dirs.iter()));
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn match_beginning_longest_match() {
|
||||
let dirs = [LogDirective { name: Some("crate2".to_owned()), level: 3 },
|
||||
LogDirective { name: Some("crate2::mod".to_owned()), level: 4 },
|
||||
LogDirective { name: Some("crate1::mod1".to_owned()), level: 2 }];
|
||||
let dirs = [
|
||||
LogDirective { name: Some("crate2".to_strbuf()), level: 3 },
|
||||
LogDirective { name: Some("crate2::mod".to_strbuf()), level: 4 },
|
||||
LogDirective { name: Some("crate1::mod1".to_strbuf()), level: 2 }
|
||||
];
|
||||
assert!(enabled(4, "crate2::mod1", dirs.iter()));
|
||||
assert!(!enabled(4, "crate2", dirs.iter()));
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn match_default() {
|
||||
let dirs = [LogDirective { name: None, level: 3 },
|
||||
LogDirective { name: Some("crate1::mod1".to_owned()), level: 2 }];
|
||||
let dirs = [
|
||||
LogDirective { name: None, level: 3 },
|
||||
LogDirective { name: Some("crate1::mod1".to_strbuf()), level: 2 }
|
||||
];
|
||||
assert!(enabled(2, "crate1::mod1", dirs.iter()));
|
||||
assert!(enabled(3, "crate2::mod2", dirs.iter()));
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn zero_level() {
|
||||
let dirs = [LogDirective { name: None, level: 3 },
|
||||
LogDirective { name: Some("crate1::mod1".to_owned()), level: 0 }];
|
||||
let dirs = [
|
||||
LogDirective { name: None, level: 3 },
|
||||
LogDirective { name: Some("crate1::mod1".to_strbuf()), level: 0 }
|
||||
];
|
||||
assert!(!enabled(1, "crate1::mod1", dirs.iter()));
|
||||
assert!(enabled(3, "crate2::mod2", dirs.iter()));
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue