如何导入异常以用于 clojure 测试

How to import exception for use in clojure test

我正尝试按照 here 所述使用 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) 平台,但你必须自己处理平台的细节(那里 reader cljc 中的宏可以帮助解决这个问题。

注意:如果您正在编写,您可以访问 CLJS 中的 ArithmethicException 宏,在编译时又只是 Clojure 运行,但那只是 “永远不会工作”答案的细微差别。