2018-08-30 07:18:55 -05:00
|
|
|
// run-pass
|
2018-09-25 16:51:35 -05:00
|
|
|
#![allow(unused_imports)]
|
2018-07-24 19:51:37 -05:00
|
|
|
// This test checks for namespace pollution by private tests.
|
|
|
|
// Tests used to marked as public causing name conflicts with normal
|
|
|
|
// functions only in test builds.
|
|
|
|
|
|
|
|
// compile-flags: --test
|
|
|
|
|
|
|
|
mod a {
|
|
|
|
pub fn foo() -> bool {
|
|
|
|
true
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
mod b {
|
|
|
|
#[test]
|
2018-07-30 21:55:23 -05:00
|
|
|
fn foo() {
|
|
|
|
local_name(); // ensure the local name still works
|
|
|
|
}
|
|
|
|
|
|
|
|
#[test]
|
|
|
|
fn local_name() {}
|
2018-07-24 19:51:37 -05:00
|
|
|
}
|
|
|
|
|
|
|
|
use a::*;
|
|
|
|
use b::*;
|
|
|
|
|
2018-07-30 21:55:23 -05:00
|
|
|
pub fn conflict() {
|
2018-07-24 19:51:37 -05:00
|
|
|
let _: bool = foo();
|
2018-07-30 21:55:23 -05:00
|
|
|
}
|