Моя структура кода выглядит следующим образом:
class A {
def a(x: () => Unit) { do something}
}
class B {
....
def foo() {
def x() { something }
a(x)
}
}
Теперь я хочу сделать юнит-тест класса B с макетом A.
val a = mock[A]
def x () { ... }
a.a(x) atLeastOnce
Выше не работает.Поскольку этот новый x не является x внутри foo ().Но x внутри foo является локальным, недоступным для unittest.Любое предложение, кроме как убрать x из foo?