3 个版本
0.1.3 | 2024 年 1 月 25 日 |
---|---|
0.1.2 | 2023 年 12 月 7 日 |
0.1.1 | 2023 年 12 月 7 日 |
#743 在 数据库接口
24KB
265 行
temp-mongo
为单元测试提供简单的临时 MongoDB 实例。
使用 TempMongo
结构体获取一个连接到临时 MongoDB 实例的 mongodb::Client
。所有从属的 MongoDB 实例的状态都存储在临时目录中,并且会自动清理(除非禁用)。
在 Unix 平台上,客户端通过 Unix 套接字连接。Windows 支持 planed by picking a free TCP port on the loopback adapter.
示例
请参阅 仓库中的示例,其中使用 assert2
提供了更详细的示例。
use temp_mongo::TempMongo;
use mongodb::bson::doc;
let mongo = TempMongo::new().await?;
println!("Using temporary directory: {}", mongo.directory().display());
let client = mongo.client();
let collection = client.database("test").collection("animals");
collection.insert_one(doc! { "species": "dog", "cute": "yes", "scary": "usually not" }, None).await?;
collection.insert_one(doc! { "species": "T-Rex", "cute": "maybe", "scary": "yes" }, None).await?;
依赖关系
~26–39MB
~742K SLoC