我有一个接收复杂参数(HTML 字符串)的函数。我想检查有关此字符串的多个条件,即:
receiver.should_receive(:post_data).with(json_content).with(id_matching(5))
多个with
参数不起作用,还有其他选择吗?如果可以以某种方式制作复合匹配器,我很乐意定义自定义匹配器。
显然我可以多次运行相同的测试并测试不同的结果,但是这是一个需要几秒钟才能运行的集成测试,所以我不想让它变得更慢。
谢谢
编辑:
在撰写本文时,接受的答案(使用带有自定义描述的自定义匹配器)似乎是最佳选择。然而它并不完美,理想情况下with
会支持“这是预期类型的项目,但不是我们预期的项目”的概念,而不是纯二进制匹配。