提交 c951ed7f 编写于 作者: G Guillaume Gomez

Add tested item in the rustdoc --test output

上级 bae454ed
......@@ -418,8 +418,12 @@ pub fn add_test(&mut self, test: String,
should_panic: bool, no_run: bool, should_ignore: bool,
as_test_harness: bool, compile_fail: bool, error_codes: Vec<String>,
line: usize, filename: String) {
let name = format!("{} - line {}", filename, line);
self.cnt += 1;
let name = if self.use_headers {
let s = self.current_header.as_ref().map(|s| &**s).unwrap_or("");
format!("{} - {} (line {})", filename, s, line)
} else {
format!("{} - {} (line {})", filename, self.names.join("::"), line)
};
let cfgs = self.cfgs.clone();
let libs = self.libs.clone();
let externs = self.externs.clone();
......
......@@ -4,4 +4,4 @@ all: foo.rs
$(RUSTC) --cfg 'feature="bar"' --crate-type lib foo.rs
$(HOST_RPATH_ENV) '$(RUSTDOC)' --test --cfg 'feature="bar"' \
-L $(TMPDIR) foo.rs |\
grep -q 'foo.rs - line 11 ... ok'
grep -q 'foo.rs - foo (line 11) ... ok'
......@@ -1998,16 +1998,20 @@ fn check_rustdoc_test_option(&self, res: ProcRes) {
for _ in res.stdout.split("\n")
.filter(|s| s.starts_with("test "))
.inspect(|s| {
let tmp: Vec<&str> = s.split(" - line ").collect();
let tmp: Vec<&str> = s.split(" - ").collect();
if tmp.len() == 2 {
let path = tmp[0].rsplit("test ").next().unwrap();
if let Some(ref mut v) = files.get_mut(path) {
tested += 1;
let line = tmp[1].split(" ...")
.next()
.unwrap_or("0")
.parse()
.unwrap_or(0);
let mut iter = tmp[1].split("(line ");
iter.next();
let line = iter.next()
.unwrap_or(")")
.split(")")
.next()
.unwrap_or("0")
.parse()
.unwrap_or(0);
if let Ok(pos) = v.binary_search(&line) {
v.remove(pos);
} else {
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册