首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >我无法在clojure/midje中运行测试

我无法在clojure/midje中运行测试
EN

Stack Overflow用户
提问于 2013-04-29 20:46:57
回答 1查看 493关注 0票数 0

我使用以下命令运行测试:

代码语言:javascript
运行
复制
lein midje :autotest

我得到了错误:

线程"main“导出中出现异常:未找到命名空间:java.lang.Exception-is.json-export

文件位于: sprint- is /src/sprint_is/json_export.clj

它包含代码:

代码语言:javascript
运行
复制
(ns sprint-is.json-export)
(require [[noir.response :as response]])
(defn serialize [value] (response/json value))

即使我没有测试文件,它也会抛出这个错误。当我创建测试文件时,我得到了类似的错误:

未找到命名空间: sprint-is.test.json-export

测试位于: sprint- is / Test /sprint_is/json_export.clj

包含以下内容:

代码语言:javascript
运行
复制
(ns sprint-is.test.json-export
    (:require [sprint-is.json-export :as json-export]))

(fact "module can serialize scalar values"
    (json-export/serialize 123) => 123)

当我尝试从REPL导入它时,它也找不到名称空间。我尝试重命名文件,移动文件,重命名目录,删除ns (它可以编译,但不起作用),在Clojure IRC上被问到。我将代码与其他项目(包括那些在我的计算机上工作的项目)进行了比较,结果似乎是一样的。

源代码在这里:https://bitbucket.org/jiriknesl/sprintis

EN

Stack Overflow用户

回答已采纳

发布于 2013-04-29 21:28:29

您的某个名称空间中存在编译错误,我怀疑是sprint-is.json-export

在bitbucket上,你有这个:

代码语言:javascript
运行
复制
(ns sprint-is.json-export)

(require [[noir.response :as response]])

(defn serialize [value] (response/json value))

它不会编译,因为没有定义noir.responseresponse

你应该有:

代码语言:javascript
运行
复制
(ns sprint-is.json-export
   (:require [noir.response :as response]))

(defn serialize [value] (response/json value))

如果您坚持在ns宏外使用require,则可以执行以下操作,但请注意,这不是惯用的用法。

代码语言:javascript
运行
复制
(ns sprint-is.json-export)

(require '[noir.response :as response])

(defn serialize [value] (response/json value))
票数 2
EN
查看全部 1 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16279009

复制
相关文章

相似问题

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