#rspec #test-framework #test

ruspec

使用 Rust 模拟 Rspec 测试框架

3 个版本

0.1.3 2019年4月22日
0.1.2 2019年3月18日
0.1.1 2019年3月12日
0.1.0 2019年3月11日

#621测试 分类中

自定义许可证

20KB
529 行(不包括注释)

ruspec - 使用 Rust 模拟 Rspec 测试框架

crate-name at crates.io CircleCI

使用方法

添加你的 Cargo.toml

ruspec = "0.1.1"

导入 ruspec!

use ruspec::ruspec;

示例语法

use ruspec::ruspec;

ruspec! {
    describe "test module name" {
        before { let context = 5; }
        subject { context + 5 }

        it "test name" {
            assert_eq!(subject, 10);
        }
    }

    describe "test module 2" {
        before { let context = 5; }
        it "test name" {
            assert_eq!(context, 5);
        }

        context "context is 6" {
            before { let context = 6; }
            it "should equal 6" {
                assert_eq!(context, 6);
            }
        }
    }
}

// # Expand
mod test_module_name {
    #[test]
    fn test_name() {
        let context = 5;

        assert_eq(context + 5, 10)
    }
}

mod test_module_2 {
    #[test]
    fn test_name() {
        let context = 5;

        assert_eq(context, 10)
    }

    mod context_is_6 {
        #[test]
        fn should_equal_6() {
            let context = 6;
            assert_eq!(context, 6)
        }
    }
}

依赖

~2–10MB
~94K SLoC