Crate bintest[−][src]
Expand description
Testing the build binaries of a bin crate.
Description
‘cargo’ tests by default have no support for running tests on a build binary. This crate solves this.
How It Works
There are some problems to overcome the cargo limitations.
- Running cargo tests does not depend on the binary build, by default they are not compiled at test time.
- There are no standard facilities to locate and execute the build binaries in a test.
BinTest solve these problems by running ‘cargo build’ at test time, parsing its output for identifying and locating the build binaries. On request it creates a std::process::Command for the binary which can be used for any further testing.
Example
#test fn test() { // BinTest::new() will run ‘cargo build’ and registers all build binaries let bintest = BinTest::new();
// BinTest::command() looks up binary by its name and creates a process::Command from it let command = bintest.command(“name”);
//WIP: this command can then be used for testing
}
Structs
BinTest | |
Command | A process builder, providing fine-grained control over how a new process should be spawned. |
Stdio | Describes what to do with a standard I/O stream for a child process when
passed to the |