【问题标题】:What is the === (triple-equals) operator in Scala Koans?Scala Koans 中的 ===(三等号)运算符是什么?
【发布时间】:2012-05-16 09:38:23
【问题描述】:

我开始通过Scala Koans 进行工作,它围绕一组单元测试组织,其中包含需要填写的空白。(这个想法是根据类似的 Ruby Koans 项目建模的。)您启动 sbt 工具运行测试,它警告:

[信息] + *********************************************** [信息] + [信息] + [信息] + [信息] + 请冥想套件“AboutEmptyValues”的公案“无等于无” [信息] + [信息] + [信息] + [信息] + ***********************************************

...所以你去看看这个单元测试,它说:

测试(“无等于无”){ 断言(无 === __) }

...而且,在冥想之后,你意识到你应该像这样填写空白:

测试(“无等于无”){ 断言(无 === 无) }

...然后它继续进行下一个单元测试。

不过,我的问题是,=== 运算符是什么?我似乎无法在任何地方找到它。这是 Scala Koans 项目本身定义的 DSL 运算符吗?还是它是 ScalaTest 框架的一部分?还是在 Scala 中?

【问题讨论】:

    标签: scala scalatest scala-2.9


    【解决方案1】:

    这是来自ScalaTest 的三等号运算符。看看这个页面:Getting Started with FunSuite。它说:

    ScalaTest 允许您使用 Scala 的断言语法,但定义了一个三元组 等于运算符 (===) 为您提供更好的错误消息。下列 代码会给你一个错误,表明断言失败:

    assert(1 == 2)
    

    改用三等号会给您提供更多信息的错误 消息,“1 不等于 2”:

    assert(1 === 2)
    

    【讨论】:

      猜你喜欢
      • 2022-06-13
      • 2021-02-13
      • 2012-12-27
      • 2012-03-15
      • 2017-03-31
      • 1970-01-01
      • 1970-01-01
      • 2022-01-16
      • 2011-02-05
      相关资源
      最近更新 更多