Skip to content

Commit 29b3f29

Browse files
committed
test harness cleanup
1 parent 9f94f82 commit 29b3f29

File tree

1 file changed

+20
-27
lines changed

1 file changed

+20
-27
lines changed

src/libsyntax/ext/expand.rs

Lines changed: 20 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -1454,27 +1454,36 @@ mod test {
14541454
assert!((shouldmatch.len() == 0) ||
14551455
(varrefs.len() > *shouldmatch.iter().max().unwrap()));
14561456
for (idx,varref) in varrefs.iter().enumerate() {
1457+
let print_hygiene_debug_info = || {
1458+
// good lord, you can't make a path with 0 segments, can you?
1459+
let final_varref_ident = match varref.segments.last() {
1460+
Some(pathsegment) => pathsegment.identifier,
1461+
None => fail!("varref with 0 path segments?")
1462+
};
1463+
let varref_name = mtwt::resolve(final_varref_ident);
1464+
let varref_idents : Vec<ast::Ident>
1465+
= varref.segments.iter().map(|s| s.identifier)
1466+
.collect();
1467+
println!("varref #{}: {}, resolves to {}",idx, varref_idents, varref_name);
1468+
let string = token::get_ident(final_varref_ident);
1469+
println!("varref's first segment's string: \"{}\"", string.get());
1470+
println!("binding #{}: {}, resolves to {}",
1471+
binding_idx, *bindings.get(binding_idx), binding_name);
1472+
mtwt::with_sctable(|x| mtwt::display_sctable(x));
1473+
};
14571474
if shouldmatch.contains(&idx) {
14581475
// it should be a path of length 1, and it should
14591476
// be free-identifier=? or bound-identifier=? to the given binding
14601477
assert_eq!(varref.segments.len(),1);
1461-
let varref_name = mtwt::resolve(varref.segments
1462-
.get(0)
1463-
.identifier);
1478+
let varref_name = mtwt::resolve(varref.segments.get(0).identifier);
14641479
let varref_marks = mtwt::marksof(varref.segments
14651480
.get(0)
14661481
.identifier
14671482
.ctxt,
14681483
invalid_name);
14691484
if !(varref_name==binding_name) {
1470-
let varref_idents : Vec<ast::Ident>
1471-
= varref.segments.iter().map(|s|
1472-
s.identifier)
1473-
.collect();
14741485
println!("uh oh, should match but doesn't:");
1475-
println!("varref #{}: {}",idx, varref_idents);
1476-
println!("binding #{}: {}", binding_idx, *bindings.get(binding_idx));
1477-
mtwt::with_sctable(|x| mtwt::display_sctable(x));
1486+
print_hygiene_debug_info();
14781487
}
14791488
assert_eq!(varref_name,binding_name);
14801489
if bound_ident_check {
@@ -1488,27 +1497,11 @@ mod test {
14881497
&& (varref_name == binding_name);
14891498
// temp debugging:
14901499
if fail {
1491-
let varref_idents : Vec<ast::Ident>
1492-
= varref.segments.iter().map(|s|
1493-
s.identifier)
1494-
.collect();
14951500
println!("failure on test {}",test_idx);
14961501
println!("text of test case: \"{}\"", teststr);
14971502
println!("");
14981503
println!("uh oh, matches but shouldn't:");
1499-
println!("varref #{}: {}, resolves to {}",idx, varref_idents,
1500-
varref_name);
1501-
// good lord, you can't make a path with 0 segments, can you?
1502-
let string = token::get_ident(varref.segments
1503-
.get(0)
1504-
.identifier);
1505-
println!("varref's first segment's uint: {}, and string: \"{}\"",
1506-
varref.segments.get(0).identifier.name,
1507-
string.get());
1508-
println!("binding #{}: {}, resolves to {}",
1509-
binding_idx, *bindings.get(binding_idx),
1510-
binding_name);
1511-
mtwt::with_sctable(|x| mtwt::display_sctable(x));
1504+
print_hygiene_debug_info();
15121505
}
15131506
assert!(!fail);
15141507
}

0 commit comments

Comments
 (0)