首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何用ScalaMock编写期望?

如何用ScalaMock编写期望?
EN

Stack Overflow用户
提问于 2015-10-27 10:25:30
回答 1查看 288关注 0票数 1

这个问题似乎很明显,我知道,但是我已经尝试了在文档上编写的所有东西,我不能在任何类上模拟一个方法。

在这个测试中,我将scalaMock 3用于Scala2.10和ScalaTest 2

DateServiceTest.scala

代码语言:javascript
复制
@RunWith(classOf[JUnitRunner])
class DateServiceTest extends FunSuite with MockFactory{
  val conf = new SparkConf().setAppName("Simple Application").setMaster("local")

  val sc = new SparkContext(conf)

  implicit val sqlc = new SQLContext(sc)

  val m = mock[DateService]
  (m.getDate _).expects().returning(Some(new DateTime)) // Error here
}

DateService.scala

代码语言:javascript
复制
class DateService extends Serializable {

  def getDate(implicit sqlc: SQLContext): Option[DateTime] = {
    Some(new DateTime(loadDateFromDatabase(sqlc)))
  }
}

这对我来说似乎很简单,但人们的期望是把这个错误抛给我。

代码语言:javascript
复制
type mismatch; found : Option[org.joda.time.DateTime] required: ? ⇒ ?

我在这里做错什么了吗?还有其他方法来设定方法的期望吗?

EN

回答 1

Stack Overflow用户

发布于 2015-10-27 17:13:59

getDate方法需要一个SQLContext -尝试添加一个)或传递特定的sqlc

代码语言:javascript
复制
(m.getDate _).expects(*).returning(Some(new DateTime))
// Or, alternatively
(m.getDate _).expects(sqlc).returning(Some(new DateTime))
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/33365400

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档