Elliot Shank via RT wrote:
Show quoted text> <URL:
http://rt.cpan.org/Ticket/Display.html?id=31972 >
>
> claco@chrislaco.com via RT wrote:
>> Elliot Shank via RT wrote:
>>> Kindly test v1.082.
>> Having build problems.
>
> Why are you running author tests? Author tests are not supported outside of our own environments. Kindly unset TEST_AUTHOR and run again.
Well, because, I'm an author on my machine...so TEST_AUTHOR=1 in my
shell. Now interestingly enough, this didn't cause problems on OSX or
*nix...only goes boom on Win32 with TEST_AUTHOR=1. But I digress....
With TEST_AUTHOR=0...
make test yields plenty of these:
'C:\Program' is not recognized as an internal or external command
And my own critic tests no longer hang...but they also yield the
warnings above, so I'm not sure if they're really being spell checked at
all.
Show quoted text> t/00_modules....................................ok
> t/01_config.....................................'C:\Program' is not recognized as an internal or external command,
> operable program or batch file.
> 'C:\Program' is not recognized as an internal or external command,
> operable program or batch file.
> t/01_config.....................................5/? 'C:\Program' is not recognized as an internal or external command,
> operable program or batch file.
> t/01_config.....................................18/? 'C:\Program' is not recognized as an internal or external command,
> operable program or batch file.
> t/01_config.....................................21/? 'C:\Program' is not recognized as an internal or external command,
> operable program or batch file.
> 'C:\Program' is not recognized as an internal or external command,
> operable program or batch file.
> t/01_config.....................................31/? 'C:\Program' is not recognized as an internal or external command,
> operable program or batch file.
> t/01_config.....................................34/? 'C:\Program' is not recognized as an internal or external command,
> operable program or batch file.
> 'C:\Program' is not recognized as an internal or external command,
> operable program or batch file.
> t/01_config.....................................58/? 'C:\Program' is not recognized as an internal or external command,
> operable program or batch file.
> t/01_config.....................................66/? 'C:\Program' is not recognized as an internal or external command,
> operable program or batch file.
> t/01_config.....................................71/? 'C:\Program' is not recognized as an internal or external command,
> operable program or batch file.
> t/01_config.....................................ok
> t/01_config_bad_perlcriticrc....................ok
[big snip]
Show quoted text> t/20_policy_podspelling......'C:\Program' is not recognized as an internal or external command,
> operable program or batch file.
> 'C:\Program' is not recognized as an internal or external command,
> operable program or batch file.
> 'C:\Program' is not recognized as an internal or external command,
> operable program or batch file.
> 'C:\Program' is not recognized as an internal or external command,
> operable program or batch file.
> 'C:\Program' is not recognized as an internal or external command,
> operable program or batch file.
> t/20_policy_podspelling......1/4 'C:\Program' is not recognized as an internal or external command,
> operable program or batch file.
> 'C:\Program' is not recognized as an internal or external command,
> operable program or batch file.
> 'C:\Program' is not recognized as an internal or external command,
> operable program or batch file.
> t/20_policy_podspelling......ok
> All tests successful.
> Files=1, Tests=4, 2 wallclock secs ( 0.02 usr + 0.01 sys = 0.03 CPU)
> Result: PASS
In fact, I suspect this test unexpectedly succeeds when spelling isn't
working:
I changed this:
Show quoted text> $code = <<'END_PERL';
> =head1 Test
>
> arglbargl
>
> =cut
> END_PERL
>
> is( pcritique($policy, \$code, \%config), can_podspell() ? 1 : 0, 'Mispelled body' );
to this:
Show quoted text> $code = <<'END_PERL';
> =head1 Test
>
> first
>
> =cut
> END_PERL
>
> is( pcritique($policy, \$code, \%config), can_podspell() ? 1 : 0, 'Mispelled body' );
in 20_policy_podspelling.t and the test still passes. No clue what that
means. In the end, it looks like the spelling command is not being
quoted... so open $command_line is running C:\Program, since there's a
space in there...
This hackishly fixes the warning problem for me...
Show quoted text> sub _derive_spell_command_line {
> my ($self) = @_;
>
> my @words = Text::ParseWords::shellwords($self->_get_spell_command());
> if (!@words) {
> return;
> }
> if (! File::Spec->file_name_is_absolute($words[0])) {
> $words[0] = '"' . File::Which::which($words[0]) . '"';
> }
> if (! $words[0] || ! -x $words[0]) {
> return;
> }
>
> $self->_set_spell_command_line(\@words);
>
> return $self->_get_spell_command_line();
> }