如果未安装模块,如何使 Raku 测试成为可选

Raw*_*ler 8 raku

我正在向一个包添加一个功能,该功能可以选择使用DBIish. 我想编写一些单元测试以确保功能正常工作。但是,DBIish它应该是一个可选的依赖项,这意味着您不需要它来安装或使用该包。DBIish如果用户没有安装,如何跳过测试DBIish

就像是:

{
    require ::('DBIish');
    CATCH {
        default {
            skip-testing;
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

...将是理想的,但可选的测试标志也可以工作,但我似乎找不到有关该主题的任何文档。

Eli*_*sen 5

如果是关于导入应该安装(或不安装)的类,我总是使用以下“技巧”:

my \Foo = try "use Foo; Foo".EVAL;
Run Code Online (Sandbox Code Playgroud)

如果成功了,那就Foo上课了。如果没有,那么Foo将会是Nil