我是Scala的新手
我的sbt版本是: 0.13.17
我的Scala版本是: Scala代码运行程序版本2.12.6-版权所有2002-2018,LAMP / EPFL和Lightbend,Inc。
我正在尝试使用以下代码运行测试用例
class TestSpec extends WordSpec with Matchers with MockFactory with OneAppPerSuite {
"it" should {
"add 2 numbers" in new Testing() {
val a = 2
val b = 3
val expected = 5
val result: Int = add(2, 3)
result shouldEqual expected
}
}
trait Testing {
def add(a: Int, b: Int): Int = {
a + b
}
}
}
我得到以下错误
discarded non-Unit value
"add 2 numbers" in new Testing() {
在我的build.sbt文件中,我看到了
“-Ywarn-value-discard”,//未使用非单位表达式结果时发出警告
我无法删除上述行以及如何确保测试用例能够执行。
我已经通过此链接 Suppress "discarded non-Unit value" warning。但是不确定需要做什么。 任何帮助都将受到高度赞赏
答案 0 :(得分:1)
I just tried something like ... And it works.
class Testclass extends FlatSpec with Matchers with TestTrait {
it should "add two integers" in {
val a: Int = 2
val b: Int = 3
val result = add(a, b)
result shouldEqual(5)
}
}
trait TestTrait {
def add(a: Int, b: Int):Int = {
a + b
}
}
答案 1 :(得分:1)
disable -Ywarn-value-discard
答案 2 :(得分:-1)
出现此警告是因为未使用分配的值a和b。也许你想写:
val result: Int = add(a, b)