build(rust): vendor googletest crate
This commit was merged in pull request #76.
This commit is contained in:
28
third_party/crates/autocfg-1.5.1/tests/no_std.rs
vendored
Normal file
28
third_party/crates/autocfg-1.5.1/tests/no_std.rs
vendored
Normal file
@@ -0,0 +1,28 @@
|
||||
extern crate autocfg;
|
||||
|
||||
use std::env;
|
||||
|
||||
mod support;
|
||||
|
||||
/// Tests that we can control the use of `#![no_std]`.
|
||||
#[test]
|
||||
fn no_std() {
|
||||
// Clear the CI `TARGET`, if any, so we're just dealing with the
|
||||
// host target which always has `std` available.
|
||||
env::remove_var("TARGET");
|
||||
|
||||
// Use the same path as this test binary.
|
||||
let out = support::out_dir();
|
||||
|
||||
let mut ac = autocfg::AutoCfg::with_dir(out.as_ref()).unwrap();
|
||||
assert!(!ac.no_std());
|
||||
assert!(ac.probe_path("std::mem"));
|
||||
|
||||
// `#![no_std]` was stabilized in Rust 1.6
|
||||
if ac.probe_rustc_version(1, 6) {
|
||||
ac.set_no_std(true);
|
||||
assert!(ac.no_std());
|
||||
assert!(!ac.probe_path("std::mem"));
|
||||
assert!(ac.probe_path("core::mem"));
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user