请在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。这是额外的工作,在你这个案例中,它并没有帮助你。也许你可以将其关闭。

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