【发布时间】:2023-04-05 13:34:02
【问题描述】:
我对 Scala 还是很陌生,我想知道是否有某种方法可以创建一个虚拟的 Future 对象来模拟 isCompleted 到 false。我需要这个来进行测试。
目前我用来拥有一个假人Future[Int] 是这样的:
Future({
while (true) {}
1
})
这很丑。
编辑
我有一个object 和一个变量x,它是一个Option[Future[Int]]。在同一个object 中,我有方法检查x 是否与None 不同,如果是,则检查它是否完成。如果未来尚未完成,它会避免调用外部辅助对象上的方法。测试期间的这个外部助手对象被模拟,我正在检查它是否被调用。为了实现这一点,我目前将x 变量设置为上面写的Future。
【问题讨论】:
-
为什么你不能使用 Future.successful(1) 来达到这个目的。
-
并使问题更清楚,它太笼统了。你正在做什么样的测试,你到底想做什么。