Ruby minitest - 更好的断言格式可能吗?

时间:2016-03-24 00:38:12

标签: ruby minitest

我测试了大量手动输入的数据结构以捕获错误的条目。结构是一个哈希数组,一个检查是为了确保特定键(ID字段)没有重复的值。

是否可以捕获失败的assert_empty()数据(返回的Expected ... to be empty字符串中的内容)并将其格式化为assert_empty()消息字符串?

以下代码有效,但我执行两次大型操作;我想执行一次操作。这可以在单行中完成,因为函数的返回值被转储到最小的断言错误消息中吗?我希望有某种变量吗?

assert_empty large_filtering_operation(bar), "Duplicated ID #{large_filtering_operation(bar)["id"]} detected in #{bar}"

1 个答案:

答案 0 :(得分:2)

您获得的最简洁可能是内联作业:

assert_empty(result = large_filtering_operation(bar),
  "Duplicated ID #{result["id"]} detected in #{bar}")