2024年Clojure状态调查!中分享你的想法吧!

欢迎!请查看关于页面了解更多关于它是如何工作的信息。

0
IO

“empty”关键字没有太多用处,但显然是有效的,例如:

({(keyword "") 1} (keyword ""))

但是打印和读取它导致 * 无效标记:

(read-string (pr-str{(keyword "") 1}))

在我的情况下,这种情况发生在对Azure REST API的响应中。我的测试在真实API中使用时将返回的数据存储为mock-data,以在回归测试中模拟API的使用。由于这个原因,使用模拟API的测试失败了。
除了在pr-str之前显式尝试移除它以外,还有其他可行的方法吗?

2 个答复

+2
这是我一直在寻找的链接!谢谢
0

为什么不使用字符串作为映射键,如果关键词过于限制性?

也许你的Azure客户端通过将键关键词化来解析JSON。那是一种额外的工作,在你的情况下,并不有助于解决问题。也许你可以关闭它。

我真的不想更改我的应用程序代码。解决方案是在存储到测试代码之前手动删除不可读的关键词。
...