Trait assert_cmd::cargo::CommandCargoExt
source · pub trait CommandCargoExtwhere
Self: Sized,{
// Required method
fn cargo_bin<S: AsRef<str>>(name: S) -> Result<Self, CargoError>;
}
Expand description
Create a Command
for a bin
in the Cargo project.
CommandCargoExt
is an extension trait for Command
to easily launch a crate’s
binaries.
See the cargo
module documentation for caveats and workarounds.
§Examples
use assert_cmd::prelude::*;
use std::process::Command;
let mut cmd = Command::cargo_bin(env!("CARGO_PKG_NAME"))
.unwrap();
let output = cmd.unwrap();
println!("{:?}", output);
Required Methods§
sourcefn cargo_bin<S: AsRef<str>>(name: S) -> Result<Self, CargoError>
fn cargo_bin<S: AsRef<str>>(name: S) -> Result<Self, CargoError>
Create a Command
to run a specific binary of the current crate.
See the cargo
module documentation for caveats and workarounds.
The Command
created with this method may run the binary through a runner, as configured
in the CARGO_TARGET_<TRIPLET>_RUNNER
environment variable. This is useful for running
binaries that can’t be launched directly, such as cross-compiled binaries. When using
this method with cross, no extra configuration is
needed.
§Examples
use assert_cmd::prelude::*;
use std::process::Command;
let mut cmd = Command::cargo_bin(env!("CARGO_PKG_NAME"))
.unwrap();
let output = cmd.unwrap();
println!("{:?}", output);
use assert_cmd::prelude::*;
use std::process::Command;
let mut cmd = Command::cargo_bin("bin_fixture")
.unwrap();
let output = cmd.unwrap();
println!("{:?}", output);
Object Safety§
This trait is not object safe.