/// `rustc` getting `-Zincremental` passed to it.
#[test]
fn cargo_compile_incremental() {
- if !is_nightly() {
- return;
- }
-
let p = project("foo")
.file("Cargo.toml", &basic_bin_manifest("foo"))
.file("src/foo.rs", &main_file(r#""i am foo""#, &[]))
#[test]
fn incremental_profile() {
- if !is_nightly() {
- return;
- }
-
let p = project("foo")
.file(
"Cargo.toml",
#[test]
fn incremental_config() {
- if !is_nightly() {
- return;
- }
-
let p = project("foo")
.file(
"Cargo.toml",
);
}
-#[test]
-fn rustc_no_trans() {
- if !is_nightly() {
- return;
- }
-
- let p = project("foo")
- .file(
- "Cargo.toml",
- r#"
- [package]
- name = "foo"
- version = "0.0.1"
- authors = []
- "#,
- )
- .file("src/main.rs", "fn main() {}")
- .build();
-
- assert_that(
- p.cargo("rustc").arg("-v").arg("--").arg("-Zno-trans"),
- execs().with_status(0),
- );
-}
-
#[test]
fn build_multiple_packages() {
let p = project("foo")
use cargotest::install::exe;
-use cargotest::is_nightly;
use cargotest::support::paths::CargoPathExt;
use cargotest::support::registry::Package;
use cargotest::support::{execs, project};
#[test]
fn custom_derive() {
- if !is_nightly() {
- return;
- }
let foo = project("foo")
.file(
"Cargo.toml",
.file(
"src/main.rs",
r#"
-#![feature(proc_macro)]
-
#[macro_use]
extern crate bar;
.file(
"src/lib.rs",
r#"
-#![feature(proc_macro, proc_macro_lib)]
-#![crate_type = "proc-macro"]
-
extern crate proc_macro;
use proc_macro::TokenStream;
use std::io::prelude::*;
use cargo::util::process;
-use cargotest;
use cargotest::sleep_ms;
use cargotest::support::paths::{self, CargoPathExt};
use cargotest::support::{execs, main_file, project};
#[test]
fn thin_lto_works() {
- if !cargotest::is_nightly() {
- return;
- }
let p = project("foo")
.file(
"Cargo.toml",
#[test]
fn probe_cfg_before_crate_type_discovery() {
- if !is_nightly() {
- return;
- }
-
let client = project("client")
.file(
"Cargo.toml",
.file(
"src/main.rs",
r#"
- #![feature(proc_macro)]
-
#[macro_use]
extern crate noop;
.file(
"src/lib.rs",
r#"
- #![feature(proc_macro, proc_macro_lib)]
-
extern crate proc_macro;
use proc_macro::TokenStream;
#[test]
fn noop() {
- if !is_nightly() {
- return;
- }
-
let client = project("client")
.file(
"Cargo.toml",
.file(
"src/main.rs",
r#"
- #![feature(proc_macro)]
-
#[macro_use]
extern crate noop;
.file(
"src/lib.rs",
r#"
- #![feature(proc_macro, proc_macro_lib)]
-
extern crate proc_macro;
use proc_macro::TokenStream;
#[test]
fn impl_and_derive() {
- if !is_nightly() {
- return;
- }
-
let client = project("client")
.file(
"Cargo.toml",
.file(
"src/main.rs",
r#"
- #![feature(proc_macro)]
-
#[macro_use]
extern crate transmogrify;
.file(
"src/lib.rs",
r#"
- #![feature(proc_macro, proc_macro_lib)]
-
extern crate proc_macro;
use proc_macro::TokenStream;
#[test]
fn proc_macro_doctest() {
- if !is_nightly() {
- return;
- }
let foo = project("foo")
.file(
"Cargo.toml",
.file(
"src/lib.rs",
r#"
-#![feature(proc_macro, proc_macro_lib)]
#![crate_type = "proc-macro"]
extern crate proc_macro;