#cli-test #temporary #command #🔨

temp_test

为Rust提供的临时测试实用工具库 🔨

2个版本

0.1.1 2020年5月5日
0.1.0 2020年5月5日

#519 in 测试

MIT/Apache

10KB
184 代码行

temp_test - Rust的临时测试工具 🔨

Build Status

一个简单的Rust临时文件库。这个库可以创建一个临时环境来测试你的Rust CLI库,对多个命令和参数进行测试,甚至提供不同的环境。它使用tempfile来安全地处理所有临时文件。

用法

最低要求的Rust版本:1.32.0

将其添加到您的 Cargo.toml

[dev-dependencies]
temp_test = "0.1.0"

示例

use clap::{Arg, App};

fn main() {
    let matches = App::new("My Super Program")
        .arg(Arg::with_name("config")
        .arg(Arg::with_name("v")
            .short('v')
            .multiple(true)
            .about("Sets the level of verbosity"))
        .subcommand(App::new("test")
            .about("controls testing features")
            .arg(Arg::with_name("debug")
                .short('d')
                .about("print debug information verbosely")))
        .get_matches();

    // do some action with the matches..
}


#[test]
fn test_example() {
    let p = temp_test::build_project("test_example").build();

    assert!(p.has_file("Cargo.toml"), "Cargo.toml file does not exist");

    let result = p.command("test").run();

    assert!(result.is_success(), "Result was unsuccessful {:?}", result);
}

许可协议

许可协议为以下之一

贡献

除非您明确声明,否则您提交给本工作的任何贡献,根据Apache-2.0许可协议定义,应双重许可如上所述,不附加任何额外条款或条件。

依赖项

~2–11MB
~108K SLoC