scala – 如何修复参数ta:TildeArrow在测试规范中的缺失隐式值
发布时间:2020-12-16 09:17:07 所属栏目:安全 来源:网络整理
导读:我正在使用一个简单的测试规范使用喷雾,我无法得到它正确编译,不知道我做错了什么.我的 scala版本是2.9.3和喷雾1.0.1(更新其中的一个不是一个合适的选择).这是我的测试规范的代码: import org.specs2.mutable.Specificationimport spray.testkit.Specs2Rout
我正在使用一个简单的测试规范使用喷雾,我无法得到它正确编译,不知道我做错了什么.我的
scala版本是2.9.3和喷雾1.0.1(更新其中的一个不是一个合适的选择).这是我的测试规范的代码:
import org.specs2.mutable.Specification import spray.testkit.Specs2RouteTest import spray.http._ import akka.util.Duration import java.util.concurrent.TimeUnit import service.MyProxy abstract class MyTestSpec extends Specification with Specs2RouteTest with MyProxy{ val duration = Duration(30,TimeUnit.SECONDS) implicit val routeTestTimeout = RouteTestTimeout(duration) "MyProxy" should { "return a json for GET requests to the /api/getclass/classCode path for a regular request" in { Get("/api/getclass/123/") ~> myRoutes~> check { responseAs[String] must contain("classCode") contentType === ContentTypes.`application/json` } } } // end should... } //end class 当我运行测试时,我收到此错误. [error] C:UsersDesktopProjectMyTestSpec.scala:23: could not find implicit value for parameter ta: MyProxySpec.this.TildeArrow[spray.routing.RequestContext,Unit] [error] Get("/api/getclass/123/") ~> myRoutes~> check { [error] ^ [error] one error found [error] (test:compile) Compilation failed 我已经尝试了另一个问题上看到的不同解决方案,到目前为止,似乎没有任何工作. Spray.io: Can’t compile test spec how to make scalatest work with spraytestkit and HttpServiceActor Basic Spray-Testkit usage to test a route does not work https://groups.google.com/forum/#!topic/spray-user/H5hkXuDGWYQ https://groups.google.com/forum/#!topic/spray-user/zFUJSVBPM5c 注意:只是为了记录,我没有使用scalatest或scalacheck这一点.纯粹是一个[spray]路由测试.而MyProxy扩展了Actor 解决方法
ScalatestRouteTest已经提供了一个隐含的ActorySystem.从actorRefFactory方法中删除“隐式”修饰符,并且应该执行该测试.
Spray.io: Can’t compile test spec (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |