clojure - 如何导入异常以用于 clojure 测试
问题描述
我正在尝试按照此处thrown?
所述进行测试,但出现以下错误。
7 | (deftest exception-test
8 | (is (thrown? ArithmeticException (/ 1 0)))
----------------------^---------------------------------------------------------
Use of undeclared Var demo.app-test/ArithmeticException
--------------------------------------------------------------------------------
9 | )
我想我必须以某种方式导入它,但无法弄清楚。命名空间如下所示:
(ns demo.app-test
(:require [cljs.test :refer (deftest is)]))
我正在使用shadow-cljs。
解决方案
Javascript 和 ClojureScript 没有ArithmethicException
- 这个测试很可能取自 Java/Clojure 示例。在 JavaScript 中除以零会给你“无穷大”(不抛出异常)。
Clojure 和 ClojureScript 之间有明显的区别,它们可以做什么和使用什么。有一些方法可以在cljc
两个平台上使用相同的源代码(例如 ),但是您必须自己处理平台的细节(cljc 中有阅读器宏来帮助解决这个问题)。
注意:如果您正在编写宏,您可以访问 CLJS 中的 ArithmethicException,这又只是 Clojure 在编译时运行的,但这只是“永远不会工作”答案的细微差别。
推荐阅读
- python - 为什么 Django 返回 Django object is not iterable 错误?
- reactjs - 无法使用 react-router 在“历史”上执行“replaceState”
- c# - 在脚本中更改实例化的游戏对象的预制件
- api - 如何通过请求在 VueJS 应用程序中显示数据?
- windows - 选择正确的 Windows 目录来安装软件并允许自动更新
- python - 删除和/或更新系统的 Python 时虚拟环境的后果
- eclipse - Tomcat8 无法通过 Eclipse 启动
- firebase - 添加带有脚本标签的firebase ui
- json - 与spring数据jpa的自引用关系
- r - 在 VEGAN 包中调用函数 ordiellipse 时出现 pts 错误:下标越界