如何自我测试球拍包装?

问题描述 投票:1回答:1

我正在尝试了解球拍中包裹的测试。我想知道是否有人可以给我一个解释性的方式来进行包装测试。因此,我眼前有一个包裹(是别人的包裹,但我正在考虑捐款),里面有一些藏品。 info.rkt看起来像这样:

#lang info
(define collection 'multi)
(define deps '(("base" #:version "6.2.900.15") ;runtime dependencies ))
(define build-deps '(;build dependencies))

现在https://blog.racket-lang.org/2017/10/tutorial-creating-a-package.html处的包装文章非常清楚单次收集情况下会发生什么。但是在多馆藏情况下则更少。

现在为了测试软件包,您需要安装软件包,运行raco test,然后通过除去软件包进行清理。我认为我应该在不安装的情况下测试该软件包。在哪种情况下,如何最好地组织info.rkt和朋友中的requiresmain.rkt来保持路径本地化,从而使测试自成一体?

racket
1个回答
0
投票

这是一个有趣的问题,您可能想在球拍邮件列表或Slack上提问。

我的建议是,在大多数情况下,您必须安装一个程序包以对其进行测试,尤其是当它包含多个集合时。特别是,我建议假设要求另一个集合中的模块应该始终使用绝对模块路径而不是相对路径,即使它们位于同一软件包中也是如此。令我感到惊讶的是,这似乎没有得到执行(基于我所做的一项小测试),但是我不会依赖当前的宽松行为。我怀疑Scribble是否可以处理相对的模块名称(但我尚未检查),因此,如果您对“测试”的定义包括构建和检查文档,这是需要安装的另一个原因。

© www.soinside.com 2019 - 2024. All rights reserved.