4 个版本 (2 个稳定版)
1.1.0 | 2020年8月14日 |
---|---|
1.0.0 | 2020年1月15日 |
0.1.1 | 2020年1月8日 |
0.1.0 | 2019年5月18日 |
#18 in #fixture
4,190 每月下载量
在 factori 中使用
14KB
356 行
Factori
Rust 的测试工厂库,灵感来自 FactoryBot。🤖 🦀
Factori 使您在测试中轻松实例化测试对象/固定值,同时提供定义它们如何实例化的舒适语法。
Factori 支持 stable Rust >=1.45。
文档
请参阅 API 文档。
示例
Factori 提供了两个宏:定义类型工厂的 factori!
,以及实例化它的 create!
#[macro_use]
extern crate factori;
pub struct Vehicle {
number_wheels: u8,
electric: bool,
}
factori!(Vehicle, {
default {
number_wheels = 4,
electric = false,
}
mixin bike {
number_wheels = 2,
}
});
fn main() {
let default = create!(Vehicle);
assert_eq!(default.number_wheels, 4);
assert_eq!(default.electric, false);
// Its type is Vehicle, nothing fancy:
let vehicle: Vehicle = default;
let three_wheels = create!(Vehicle, number_wheels: 3);
assert_eq!(three_wheels.number_wheels, 3);
let electric_bike = create!(Vehicle, :bike, electric: true);
assert_eq!(electric_bike.number_wheels, 2);
assert_eq!(electric_bike.electric, true);
}
更多示例可在 tests/
目录中找到。
测试
运行
cargo test
许可证
MIT
依赖项
~1.5MB
~36K SLoC