"zef test ." 返回的结果不同于 运行 某些使用 raku -Ilib 的测试
"zef test ." returning a different result than running some tests with raku -Ilib
我真的想不通。显然,zef
执行某种模块的排列和预编译,但在 this case 中它真的很关键,因为它似乎只是使用了不同版本的代码。例如,运行ning 失败的测试之一,
raku -Ilib t/01-basic.t # ok 1 - get-all() found Licenses
但是,zef test .
未能通过该测试(如果 运行 在本地,还有许多其他测试也能正常工作)
➜ License-Software-mine git:(master) ✗ zef test .
===> Testing: License::Software:ver<0.3.0>:auth<kalkin>
[License::Software] # Failed test 'get-all() found Licenses'
[License::Software] # at t/01-basic.t line 8
[License::Software] # You failed 1 test of 1
[License::Software] Can not find license alias 'gplv3'
[License::Software] in sub license at /home/jmerelo/progs/forks/perl6/License-Software-mine/lib/License/Software.pm6 (License::Software) line 174
[License::Software] # Failed test at t/10-gplv3.t line 8
[License::Software] Method 'aliases' must be implemented by License::Software::Abstract because it is required by roles: .
[License::Software] in block <unit> at t/10-gplv3.t line 9
[License::Software] # You planned 10 tests, but ran 1
[License::Software] # You failed 1 test of 1
[License::Software] Can not find license alias 'apache'
[License::Software] in sub license at /home/jmerelo/progs/forks/perl6/License-Software-mine/lib/License/Software.pm6 (License::Software) line 174
[License::Software] Method 'aliases' must be implemented by License::Software::Abstract because it is required by roles: .
[License::Software] in block <unit> at t/11-Apache2.t line 10
[License::Software] Can not find license alias 'lgplv3'
[License::Software] in sub license at /home/jmerelo/progs/forks/perl6/License-Software-mine/lib/License/Software.pm6 (License::Software) line 174
[License::Software] # Failed test at t/12-LGPLv3.t line 8
[License::Software] Method 'aliases' must be implemented by License::Software::Abstract because it is required by roles: .
[License::Software] in block <unit> at t/12-LGPLv3.t line 9
[License::Software] # You planned 8 tests, but ran 1
[License::Software] # You failed 1 test of 1
[License::Software] Can not find license alias 'agplv3'
[License::Software] in sub license at /home/jmerelo/progs/forks/perl6/License-Software-mine/lib/License/Software.pm6 (License::Software) line 174
[License::Software] # Failed test at t/13-AGPLv3.t line 7
[License::Software] Method 'aliases' must be implemented by License::Software::Abstract because it is required by roles: .
[License::Software] in block <unit> at t/13-AGPLv3.t line 8
[License::Software] # You planned 11 tests, but ran 1
[License::Software] # You failed 1 test of 1
[License::Software] Can not find license alias 'artistic'
[License::Software] in sub license at /home/jmerelo/progs/forks/perl6/License-Software-mine/lib/License/Software.pm6 (License::Software) line 174
[License::Software] # Failed test at t/14-Artistic2.t line 7
[License::Software] Method 'aliases' must be implemented by License::Software::Abstract because it is required by roles: .
[License::Software] in block <unit> at t/14-Artistic2.t line 8
[License::Software] # You planned 8 tests, but ran 1
[License::Software] # You failed 1 test of 1
===> Testing [FAIL]: License::Software:ver<0.3.0>:auth<kalkin>
Aborting due to test failure: License::Software:ver<0.3.0>:auth<kalkin> (use --force-test to override)
zef install .
以同样的方式失败。知道为什么会发生这种情况以及是否有一些解决方法?
zef 不使用 -Ilib
-- 我个人认为告诉人们使用它是有害的 -- 它使用 -I.
➜ License-Software git:(master) raku -Ilib t/01-basic.t
1..1
ok 1 - get-all() found Licenses
➜ License-Software git:(master) raku -I. t/01-basic.t
1..1
not ok 1 - get-all() found Licenses
# Failed test 'get-all() found Licenses'
# at t/01-basic.t line 8
# You failed 1 test of 1
现在显然 zef 本身没有进行任何预编译,也没有使用不同版本的代码。您还使用了一个插件模块,并且您所有的错误都引用了附加的东西。因此我只能假设您使用的插件代码不适用于 -I.
.
我真的想不通。显然,zef
执行某种模块的排列和预编译,但在 this case 中它真的很关键,因为它似乎只是使用了不同版本的代码。例如,运行ning 失败的测试之一,
raku -Ilib t/01-basic.t # ok 1 - get-all() found Licenses
但是,zef test .
未能通过该测试(如果 运行 在本地,还有许多其他测试也能正常工作)
➜ License-Software-mine git:(master) ✗ zef test .
===> Testing: License::Software:ver<0.3.0>:auth<kalkin>
[License::Software] # Failed test 'get-all() found Licenses'
[License::Software] # at t/01-basic.t line 8
[License::Software] # You failed 1 test of 1
[License::Software] Can not find license alias 'gplv3'
[License::Software] in sub license at /home/jmerelo/progs/forks/perl6/License-Software-mine/lib/License/Software.pm6 (License::Software) line 174
[License::Software] # Failed test at t/10-gplv3.t line 8
[License::Software] Method 'aliases' must be implemented by License::Software::Abstract because it is required by roles: .
[License::Software] in block <unit> at t/10-gplv3.t line 9
[License::Software] # You planned 10 tests, but ran 1
[License::Software] # You failed 1 test of 1
[License::Software] Can not find license alias 'apache'
[License::Software] in sub license at /home/jmerelo/progs/forks/perl6/License-Software-mine/lib/License/Software.pm6 (License::Software) line 174
[License::Software] Method 'aliases' must be implemented by License::Software::Abstract because it is required by roles: .
[License::Software] in block <unit> at t/11-Apache2.t line 10
[License::Software] Can not find license alias 'lgplv3'
[License::Software] in sub license at /home/jmerelo/progs/forks/perl6/License-Software-mine/lib/License/Software.pm6 (License::Software) line 174
[License::Software] # Failed test at t/12-LGPLv3.t line 8
[License::Software] Method 'aliases' must be implemented by License::Software::Abstract because it is required by roles: .
[License::Software] in block <unit> at t/12-LGPLv3.t line 9
[License::Software] # You planned 8 tests, but ran 1
[License::Software] # You failed 1 test of 1
[License::Software] Can not find license alias 'agplv3'
[License::Software] in sub license at /home/jmerelo/progs/forks/perl6/License-Software-mine/lib/License/Software.pm6 (License::Software) line 174
[License::Software] # Failed test at t/13-AGPLv3.t line 7
[License::Software] Method 'aliases' must be implemented by License::Software::Abstract because it is required by roles: .
[License::Software] in block <unit> at t/13-AGPLv3.t line 8
[License::Software] # You planned 11 tests, but ran 1
[License::Software] # You failed 1 test of 1
[License::Software] Can not find license alias 'artistic'
[License::Software] in sub license at /home/jmerelo/progs/forks/perl6/License-Software-mine/lib/License/Software.pm6 (License::Software) line 174
[License::Software] # Failed test at t/14-Artistic2.t line 7
[License::Software] Method 'aliases' must be implemented by License::Software::Abstract because it is required by roles: .
[License::Software] in block <unit> at t/14-Artistic2.t line 8
[License::Software] # You planned 8 tests, but ran 1
[License::Software] # You failed 1 test of 1
===> Testing [FAIL]: License::Software:ver<0.3.0>:auth<kalkin>
Aborting due to test failure: License::Software:ver<0.3.0>:auth<kalkin> (use --force-test to override)
zef install .
以同样的方式失败。知道为什么会发生这种情况以及是否有一些解决方法?
zef 不使用 -Ilib
-- 我个人认为告诉人们使用它是有害的 -- 它使用 -I.
➜ License-Software git:(master) raku -Ilib t/01-basic.t
1..1
ok 1 - get-all() found Licenses
➜ License-Software git:(master) raku -I. t/01-basic.t
1..1
not ok 1 - get-all() found Licenses
# Failed test 'get-all() found Licenses'
# at t/01-basic.t line 8
# You failed 1 test of 1
现在显然 zef 本身没有进行任何预编译,也没有使用不同版本的代码。您还使用了一个插件模块,并且您所有的错误都引用了附加的东西。因此我只能假设您使用的插件代码不适用于 -I.
.