gpt4 book ai didi

package - 如何在不导出所有符号的情况下运行测试

转载 作者:行者123 更新时间:2023-12-02 17:43:07 25 4
gpt4 key购买 nike

我的主程序(至少)有一个包。我有另一个用于运行测试的包。我:在测试包的 defpackage 形式中使用主程序的包,但仅导入导出的符号。所以我无法测试所有函数,只能测试我显式导出的函数(公共(public) API)。如何解决这个问题?

最佳答案

您始终可以使用双冒号限定符引用内部(未导出)符号:

(package-name::function-name)

您还可以使用 import 将符号导入到测试包中(无论它是否从主包中导出)。例如:

(import 'package-name::function-name)
(fboundp 'function-name) ;; => t

Here's 导入上的 CLHS 条目。

另外,如果你还没有读过,我推荐 Programming in the Large: Packages and Symbols实用 Common Lisp 中的一章。它没有直接解决您的问题,但我提到它是因为我发现它通常对重新分级包和符号非常有帮助。

关于package - 如何在不导出所有符号的情况下运行测试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18363500/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com