mirror of https://github.com/lukechilds/cc-rs.git
Browse Source
Tests that modify environment variables (e.g. CFLAGS and CXXFLAGS) can cause tests to fail when run in parallel because they change a shared context. This change moves the problematic tests into separate modules. Since each `tests/*.rs` is compiled as a separate crate, these tests are not run in parallel with other tests.wip-new-parallel
3 changed files with 36 additions and 21 deletions
@ -0,0 +1,18 @@ |
|||||
|
extern crate cc; |
||||
|
extern crate tempdir; |
||||
|
|
||||
|
mod support; |
||||
|
|
||||
|
use std::env; |
||||
|
use support::Test; |
||||
|
|
||||
|
/// This test is in its own module because it modifies the environment and would affect other tests
|
||||
|
/// when run in parallel with them.
|
||||
|
#[test] |
||||
|
fn gnu_no_warnings_if_cflags() { |
||||
|
env::set_var("CFLAGS", "-arbitrary"); |
||||
|
let test = Test::gnu(); |
||||
|
test.gcc().file("foo.c").compile("foo"); |
||||
|
|
||||
|
test.cmd(0).must_not_have("-Wall").must_not_have("-Wextra"); |
||||
|
} |
@ -0,0 +1,18 @@ |
|||||
|
extern crate cc; |
||||
|
extern crate tempdir; |
||||
|
|
||||
|
mod support; |
||||
|
|
||||
|
use std::env; |
||||
|
use support::Test; |
||||
|
|
||||
|
/// This test is in its own module because it modifies the environment and would affect other tests
|
||||
|
/// when run in parallel with them.
|
||||
|
#[test] |
||||
|
fn gnu_no_warnings_if_cxxflags() { |
||||
|
env::set_var("CXXFLAGS", "-arbitrary"); |
||||
|
let test = Test::gnu(); |
||||
|
test.gcc().file("foo.cpp").cpp(true).compile("foo"); |
||||
|
|
||||
|
test.cmd(0).must_not_have("-Wall").must_not_have("-Wextra"); |
||||
|
} |
Loading…
Reference in new issue