diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index e0fc3e8..200690f 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -68,7 +68,7 @@ jobs: run: | set -ex sudo apt-get update - sudo apt-get install -y ${{ matrix.gcc_package }} ninja-build + sudo apt-get install -y ${{ matrix.gcc_package }} ninja-build libglib2.0-dev upcase=$(echo ${{ matrix.host_target }} | awk '{ print toupper($0) }' | sed 's/-/_/g') echo CARGO_TARGET_${upcase}_LINKER=${{ matrix.gcc }} >> $GITHUB_ENV echo CC_${{ matrix.target }}=${{ matrix.gcc }} >> $GITHUB_ENV diff --git a/example-crates/threadsafe-setenv/src/main.rs b/example-crates/threadsafe-setenv/src/main.rs index 8f01d85..d96a4c6 100644 --- a/example-crates/threadsafe-setenv/src/main.rs +++ b/example-crates/threadsafe-setenv/src/main.rs @@ -58,6 +58,6 @@ fn lookup_localhost() { fn do_getenv() { for _ in 0..1000 { let r = std::env::var("doesnotexist"); - assert!(r.is_ok(), "env var should not exist"); + assert!(!r.is_ok(), "env var should not exist"); } } diff --git a/tests/example_crates.rs b/tests/example_crates.rs index f0756af..8050915 100644 --- a/tests/example_crates.rs +++ b/tests/example_crates.rs @@ -163,7 +163,21 @@ fn example_crate_dns() { } #[test] -fn example_crate_threadsafe_setenv() { +fn example_crate_threadsafe_setenv_getenv() { + test_crate( + "threadsafe-setenv", + &["try_getenv"], + &[], + "will call std::env::set_var() 100 times ...\n\ + spawning thread to call std::env::var (will not crash: Rust holds lock for getenv)...\n\ + exiting without error\n", + "", + None, + ); +} + +#[test] +fn example_crate_threadsafe_setenv_lookup() { test_crate( "threadsafe-setenv", &[],