mirror of
https://github.com/rust-lang/rust.git
synced 2025-05-09 16:37:36 +00:00
add tests for cargo miri and run them on travis
This commit is contained in:
parent
2cca377bd4
commit
17090b8524
2
.gitignore
vendored
2
.gitignore
vendored
@ -1,4 +1,4 @@
|
|||||||
/target
|
target
|
||||||
/doc
|
/doc
|
||||||
tex/*/out
|
tex/*/out
|
||||||
*.dot
|
*.dot
|
||||||
|
@ -11,7 +11,12 @@ before_script:
|
|||||||
script:
|
script:
|
||||||
- |
|
- |
|
||||||
env RUST_SYSROOT=$HOME/rust travis-cargo build &&
|
env RUST_SYSROOT=$HOME/rust travis-cargo build &&
|
||||||
env RUST_SYSROOT=$HOME/rust travis-cargo test
|
env RUST_SYSROOT=$HOME/rust travis-cargo test &&
|
||||||
|
env RUST_SYSROOT=$HOME/rust travis-cargo install &&
|
||||||
|
cd cargo-miri-test &&
|
||||||
|
env RUST_SYSROOT=$HOME/rust travis-cargo miri &&
|
||||||
|
env RUST_SYSROOT=$HOME/rust travis-cargo miri test &&
|
||||||
|
cd ..
|
||||||
notifications:
|
notifications:
|
||||||
email:
|
email:
|
||||||
on_success: never
|
on_success: never
|
||||||
|
4
cargo-miri-test/Cargo.lock
generated
Normal file
4
cargo-miri-test/Cargo.lock
generated
Normal file
@ -0,0 +1,4 @@
|
|||||||
|
[root]
|
||||||
|
name = "cargo-miri-test"
|
||||||
|
version = "0.1.0"
|
||||||
|
|
6
cargo-miri-test/Cargo.toml
Normal file
6
cargo-miri-test/Cargo.toml
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
[package]
|
||||||
|
name = "cargo-miri-test"
|
||||||
|
version = "0.1.0"
|
||||||
|
authors = ["Oliver Schneider <git-spam-no-reply9815368754983@oli-obk.de>"]
|
||||||
|
|
||||||
|
[dependencies]
|
3
cargo-miri-test/src/main.rs
Normal file
3
cargo-miri-test/src/main.rs
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
fn main() {
|
||||||
|
assert_eq!(5, 5);
|
||||||
|
}
|
4
cargo-miri-test/tests/foo.rs
Normal file
4
cargo-miri-test/tests/foo.rs
Normal file
@ -0,0 +1,4 @@
|
|||||||
|
#[test]
|
||||||
|
fn bar() {
|
||||||
|
assert_eq!(4, 4);
|
||||||
|
}
|
@ -84,19 +84,16 @@ fn main() {
|
|||||||
let package = metadata.packages.remove(package_index);
|
let package = metadata.packages.remove(package_index);
|
||||||
for target in package.targets {
|
for target in package.targets {
|
||||||
let args = std::env::args().skip(skip);
|
let args = std::env::args().skip(skip);
|
||||||
if test && target.kind.get(0).map_or(false, |kind| kind == "test") {
|
let kind = target.kind.get(0).expect("badly formatted cargo metadata: target::kind is an empty array");
|
||||||
|
if test && kind == "test" {
|
||||||
if let Err(code) = process(vec!["--test".to_string(), target.name].into_iter().chain(args),
|
if let Err(code) = process(vec!["--test".to_string(), target.name].into_iter().chain(args),
|
||||||
&dep_path) {
|
&dep_path) {
|
||||||
std::process::exit(code);
|
std::process::exit(code);
|
||||||
}
|
}
|
||||||
} else if !test {
|
} else if !test && kind == "bin" {
|
||||||
if target.kind.get(0).map_or(false, |kind| kind == "bin") {
|
if let Err(code) = process(vec!["--bin".to_string(), target.name].into_iter().chain(args),
|
||||||
if let Err(code) = process(vec!["--bin".to_string(), target.name].into_iter().chain(args),
|
&dep_path) {
|
||||||
&dep_path) {
|
std::process::exit(code);
|
||||||
std::process::exit(code);
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
panic!("badly formatted cargo metadata: target::kind is an empty array");
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user