当前位置:  开发笔记 > 编程语言 > 正文

Scala的"规范"BDD框架如何工作?

如何解决《Scala的"规范"BDD框架如何工作?》经验,为你挑选了1个好方法。

我刚刚开始使用Scala,我想知道哪种语言功能允许你这样做:

"PersistentQueue" should {
  "add and remove one item" in {
    withTempFolder {
      val q = new PersistentQueue(folderName, "work", Config.fromMap(Map.empty))
      q.setup

      q.length mustEqual 0
      q.totalItems mustEqual 0
      q.bytes mustEqual 0
      q.journalSize mustEqual 0

      q.add("hello kitty".getBytes)

      q.length mustEqual 1
      q.totalItems mustEqual 1
      q.bytes mustEqual 11
      q.journalSize mustEqual 32

      new String(q.remove.get.data) mustEqual "hello kitty"

      q.length mustEqual 0
      q.totalItems mustEqual 1
      q.bytes mustEqual 0
      q.journalSize mustEqual 33

      q.close
      dumpJournal("work") mustEqual "add(11:0:hello kitty), remove"
    }
  }
}

这是来自Kestrel的单元测试.

这里发生了什么?是否"PersistentQueue" should意味着Scala字符串类已使用"should"方法扩展,或者是否在此处发生了其他事情?我快速浏览了Scala文档,但无法查看此代码示例使用的语言功能.



1> Dominic Mitc..:

它看起来像是向我添加到String类的隐式方法.这篇文章有一个演示.

推荐阅读
135369一生真爱_890
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有