Rah*_*thy 12 unit-testing scala scala.js
在Scala.js单元测试中,从驻留的文件加载测试数据的最简单的解决方案是什么test/resources?
至少最近的 Scala.js(0.6.14 和 0.6.15 测试)和 Node.js(7.8.0 测试)情况很简单。由于默认使用 Node runner 运行测试,因此可以使用 Node.js 同步文件操作并使用fs readFileSync读取文件。处理此问题的函数可能如下所示:
def rscPath(path: String): String = "src/test/resources/" + path
def rsc(path: String): String = {
import scalajs.js.Dynamic.{global => g}
val fs = g.require("fs")
def readFile(name: String): String = {
fs.readFileSync(name).toString
}
readFile(rscPath(path))
}
val testInput = rsc("package/test-input.txt")
Run Code Online (Sandbox Code Playgroud)
除了直接从 加载它们之外src/test/resources,还可以target/scala-2.12/test-classes在 SBT 构建将文件复制到那里时加载它们。我想如果我能找到一些简单的 API 如何获得这条路径,我会更喜欢这个,这样它就不必在rscPath函数中进行硬编码。
| 归档时间: |
|
| 查看次数: |
484 次 |
| 最近记录: |