#file-io #mocking #string #file #read-write #io

string_io_and_mock

提供文件中字符串读写操作的组件,以及在其 HashMap 中执行相同操作的模拟

2 个稳定版本

1.0.1 2023年11月22日

#1412 in 文件系统


用于 masterpg

MIT/Apache

11KB
108

string_io_and_mock

作者:Koen Bekx

string_io_and_mock crate 提供了一个名为 FileTextHandler 的结构体,它作为文件系统的可模拟层。它提供了由 TextIOHandler trait 所需的读写操作

  • 方法 write_text 将字符串内容写入文件或文件系统模拟器;
  • 方法 read_text 从文件或文件系统模拟器中读取字符串内容;

在 trait 和结构体的名称中使用的 Text 表示这些实体仅用于处理 String 内容,正如 trait 方法的签名所显示的。

对于单元测试或其它应用,一个模拟的 MockTextHandler 也是可用的,它同样实现了 TextIOHandler trait,但不访问任何文件系统。它将文本存储在 HashMap 中。

这意味着 MockTextHandler 不仅仅是模拟:由于其内部持久化,它可以作为一个独立的应用组件存在,提供内存中的字符串存储,当不需要文件存储时。

用法

为了使用这个 crate,使用以下命令将其添加到你的项目的 Cargo.toml 文件中:

cargo add string_io_and_mock

并在你的代码中添加以下语句:

use string_io_and_mock::{FileTextHandler, MockTextHandler, TextIOHandler};

示例

有关如何在代码中使用这些组件的示例,请参阅 crate 的代码文档或其单元和集成测试。

依赖关系

~1.4–7MB
~43K SLoC