Sha256: 898df948c7ee82df0e0823cbde16ccc2b9dba455475665e6d2c7c0a84493e9fb

Contents?: true

Size: 1.08 KB

Versions: 8

Compression:

Stored size: 1.08 KB

Contents

#![cfg(not(miri))]
#![warn(rust_2018_idioms, single_use_lifetimes)]

use std::{
    env,
    process::{Command, ExitStatus, Stdio},
};

const PATH: &str = "tests/expand/**/*.rs";

#[rustversion::attr(not(nightly), ignore)]
#[test]
fn expandtest() {
    let is_ci = env::var_os("CI").is_some();
    let cargo = &*env::var("CARGO").unwrap_or_else(|_| "cargo".into());
    if !has_command(&[cargo, "expand"]) || !has_command(&[cargo, "fmt"]) {
        if is_ci {
            panic!("expandtest requires rustfmt and cargo-expand");
        }
        return;
    }

    let args = &["--all-features"];
    if is_ci {
        macrotest::expand_without_refresh_args(PATH, args);
    } else {
        env::set_var("MACROTEST", "overwrite");
        macrotest::expand_args(PATH, args);
    }
}

fn has_command(command: &[&str]) -> bool {
    Command::new(command[0])
        .args(&command[1..])
        .arg("--version")
        .stdin(Stdio::null())
        .stdout(Stdio::null())
        .stderr(Stdio::null())
        .status()
        .as_ref()
        .map(ExitStatus::success)
        .unwrap_or(false)
}

Version data entries

8 entries across 8 versions & 1 rubygems

Version Path
wasmtime-9.0.1 ./ext/cargo-vendor/pin-project-lite-0.2.9/tests/expandtest.rs
wasmtime-8.0.0 ./ext/cargo-vendor/pin-project-lite-0.2.9/tests/expandtest.rs
wasmtime-7.0.0 ./ext/cargo-vendor/pin-project-lite-0.2.9/tests/expandtest.rs
wasmtime-6.0.1 ./ext/cargo-vendor/pin-project-lite-0.2.9/tests/expandtest.rs
wasmtime-6.0.0 ./ext/cargo-vendor/pin-project-lite-0.2.9/tests/expandtest.rs
wasmtime-5.0.0 ./ext/cargo-vendor/pin-project-lite-0.2.9/tests/expandtest.rs
wasmtime-0.4.1 ./ext/cargo-vendor/pin-project-lite-0.2.9/tests/expandtest.rs
wasmtime-0.4.0 ./ext/cargo-vendor/pin-project-lite-0.2.9/tests/expandtest.rs