首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在Scala中使用spec2测试JSON

在Scala中使用spec2测试JSON
EN

Stack Overflow用户
提问于 2013-09-27 19:15:13
回答 2查看 363关注 0票数 0

我正在尝试用Specs2测试Json,但是我总是得到一个解析错误。

也许因为我用的是JObect?

代码语言:javascript
复制
val j: JObject = "hello" -> "world"
j must */("hello")

这是错误:

Search_fields

代码语言:javascript
复制
Could not parse:
JObject(List(JField(hello,JString(world))))
java.lang.Exception: Could not parse:
JObject(List(JField(hello,JString(world))))
    at net.liftweb.echidnasearch.QuerySearchSpec$$anonfun$1$$anonfun$apply$124.apply(QuerySearchSpec.scala:496)
    at net.liftweb.echidnasearch.QuerySearchSpec$$anonfun$1$$anonfun$apply$124.apply(QuerySearchSpec.scala:485)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)

MatchQuery

谢谢

EN

回答 2

Stack Overflow用户

发布于 2013-09-28 18:02:13

specs2 json匹配器是Matcher[String]。我怀疑您看到的是试图解析specs2匹配器无法解析的Lift Json对象的.toString表示。相反,您应该匹配Lift Json对象的正确字符串表示。

票数 1
EN

Stack Overflow用户

发布于 2013-09-27 20:58:42

如果您指的是编译错误,请检查所有导入,然后重试:

代码语言:javascript
复制
import net.liftweb.json.JsonDSL._
import net.liftweb.json._
val t:JObject = ("a" -> "b")

我在控制台中尝试了一下,它起作用了:

代码语言:javascript
复制
scala> val t:JObject = ("a" -> "b")
t: net.liftweb.json.JObject = JObject(List(JField(a,JString(b))))
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19049355

复制
相关文章

相似问题

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