runs-0.2.0 has been yanked.
๐ runs โ Run Rust Doctests on Standalone Files
runs lets you execute Rust documentation tests (doctests) on a standalone .rs file, even if it's not part of a full Cargo project.
Normally,
cargo test --docworks only inside valid Cargo projects.runsbridges this limitation.
โจ Features
- โ
Accepts a standalone
.rsfile with doctests - ๐ ๏ธ Automatically creates a temporary Cargo project
- ๐งช Runs
cargo test --docon the file - ๐งผ Cleans up the temp project after running
- ๐ก Optional usage as a library crate
๐ง Installation
Install from crates.io
Or from source
git clone https://github.com/2teez/runs.git
cd runs
cargo install --path .
๐ Usage
runs my_script.rs
This will:
-
Create a temp project: my_script_proj/
-
Copy my_script.rs into src/lib.rs
-
Generate Cargo.toml
-
Run cargo test --doc
-
Delete the project
-
Print results to your terminal
๐ Example
Given math.rs:
/// Add two numbers.
///
/// ```
/// use math_proj::add;
/// assert_eq!(add(2, 3), 5);
/// ```
pub fn add<T: std::ops::Add<Output = T>>(a: T, b: T) -> T {
a + b
}
You can run the doctest:
runs math.rs
Versioning:
The version was increased from 0.1.1 to 0.1.2, because the fn keyword is made public in the src/lib.rs by runs. So, user doesn't have to do that on their own.