模仿任何人可打字的
函数或表达式。
Haskell中模拟的一种常见方法是使用类型类,并为实际逻辑和测试逻辑提供实例。Typeable-mock填补了那些不太使用粒度类型类的项目的空白。它可以让你嘲笑任何人可打字的
表达在几乎任何单子的上下文中。它适用于具体类型的单子体或具有类约束的多态单子体。
--在应用程序中使用mock。这里的“useMock”是一个用户编写的帮助程序--知道应用程序上下文并可以在其中查找模拟。useMock“writeFile”writeFile>>=\f->liftIO(f路径内容)--在测试中声明mock。writeFileMock<-makeMock“writeFile”((\__->pure())::文件路径->字符串->IO())--检查断言资产有调用[expectCall“/tmp/1.txt”“你好世界”,expectCall AnyVal(谓词Val$elem“Hello”.words)]writeFileMock(写入文件模拟)
请参阅软件包文档和示例/App.hs了解更多信息。