Subject: | Does not run if equal directory names are in the path |
At fist I had an instalation problem: Test::YAML::Meta not found.
Now the real Problem.
I started at a Win32 system:
perl -e "use Test::More;use Test::Kwalitee;"
All tests failed.
To see more I have changed the die handler to Carp::confess:
------------------------------------------------------------------------
package Test::Kwalitee;
use Cwd;
use Test::Builder;
use Module::CPANTS::Analyse;
use strict;
use warnings; use Carp qw(confess);$SIG{__DIE__} = \&confess;
------------------------------------------------------------------------
Here is the output:
------------------------------------------------------------------------
1..13
ok 1 - extractable
not ok 2 - has_readme
# Failed test 'has_readme'
# at D:/Perl/site/lib/Test/Kwalitee.pm line 101.
# Add a README to the distribution. It should contain a quick
description of your module and how to install it.The file 'README' is
missing from this distrib
ution. The README provide some basic information to users prior to
downloading and unpacking the distribution.
not ok 3 - has_manifest
# Failed test 'has_manifest'
# at D:/Perl/site/lib/Test/Kwalitee.pm line 101.
# Add a MANIFEST to the distribution. Your buildtool should be able to
autogenerate it (eg 'make manifest' or './Build manifest')The
file 'MANIFEST' is missi
ng from this distribution. The MANIFEST lists all files included in the
distribution.
not ok 4 - has_meta_yml
# Failed test 'has_meta_yml'
# at D:/Perl/site/lib/Test/Kwalitee.pm line 101.
# Add a META.yml to the distribution. Your buildtool should be able to
autogenerate it.The file 'META.yml' is missing from this distribution.
META.yml is nee
ded by people maintaining module collections (like CPAN), for people
writing installation tools, or just people who want to know some stuff
about a distribut
ion before downloading it.
not ok 5 - has_buildtool
# Failed test 'has_buildtool'
# at D:/Perl/site/lib/Test/Kwalitee.pm line 101.
# Use a buildtool like Module::Build (recomended) or
ExtUtils::MakeMaker to manage your distributionMakefile.PL and/or
Build.PL are missing. This makes insta
lling this distribution hard for humans and impossible for automated
tools like CPAN/CPANPLUS
not ok 6 - has_changelog
# Failed test 'has_changelog'
# at D:/Perl/site/lib/Test/Kwalitee.pm line 101.
# Add a Changelog (best named 'Changes') to the distribution. It should
list at least major changes implemented in newer versions.The
distribution hasn't got
a Changelog (named something like m/^chang(es?|log)|history$/i. A
Changelog helps people decide if they want to upgrade to a new version.
ok 7 - no_symlinks
not ok 8 - has_tests
# Failed test 'has_tests'
# at D:/Perl/site/lib/Test/Kwalitee.pm line 101.
# Add tests!This distribution doesn't contain either a file
called 'test.pl' or a directory called 't'. This indicates that it
doesn't contain even the most
basic test-suite. This is really BAD!
not ok 9 - proper_libs
# Failed test 'proper_libs'
# at D:/Perl/site/lib/Test/Kwalitee.pm line 101.
# Move your *.pm files in a directory named 'lib'. The directory
structure should look like 'lib/Your/Module.pm' for a module
named 'Your::Module'.There is m
ore than one .pm file in the base dir, or the .pm files are not in
directory lib.
ok 10 - no_pod_errors
Can't open D:\DBD-PO\trunk\DBD-PO\trunk\DBD-PO\lib\DBD\PO.pm: No such
file or directory at D:/Perl/site/lib/Module/ExtractUse.pm line 105
at D:/Perl/site/lib/Pod/Simple.pm line 401
Pod::Simple::parse_file('Pod::Strip=HASH(0x229e228)', 'D:\DBD-
PO\trunk\DBD-PO\trunk\DBD-PO\lib\DBD\PO.pm') called at
D:/Perl/site/lib/Module/ExtractU
se.pm line 105
Module::ExtractUse::extract_use('Module::ExtractUse=HASH
(0x229dd3c)', 'D:\DBD-PO\trunk\DBD-PO\trunk\DBD-PO\lib\DBD\PO.pm')
called at D:/Perl/site/lib
/Module/CPANTS/Kwalitee/Uses.pm line 28
Module::CPANTS::Kwalitee::Uses::analyse
('Module::CPANTS::Kwalitee::Uses', 'Module::CPANTS::Analyse=HASH
(0x18caf00)') called at D:/Perl/site/lib/Test/
Kwalitee.pm line 93
Test::Kwalitee::import('Test::Kwalitee') called at -e line 1
main::BEGIN() called at D:/Perl/site/lib/Test/Kwalitee.pm line 1
eval {...} called at D:/Perl/site/lib/Test/Kwalitee.pm line 1
BEGIN failed--compilation aborted at -e line 1.
at -e line 1
------------------------------------------------------------------------
'D:\DBD-PO\trunk\DBD-PO'
is the path not
'D:\DBD-PO\trunk\DBD-PO\trunk\DBD-PO'.
So I changed the path to
'D:\DBD_PO\trunk\DBD-PO'.
------------------------------------------------------------------------
1..13
ok 1 - extractable
ok 2 - has_readme
ok 3 - has_manifest
ok 4 - has_meta_yml
ok 5 - has_buildtool
ok 6 - has_changelog
ok 7 - no_symlinks
ok 8 - has_tests
ok 9 - proper_libs
ok 10 - no_pod_errors
ok 11 - use_strict
ok 12 - has_test_pod
ok 13 - has_test_pod_coverage
------------------------------------------------------------------------
At fist only 2 directories had the same name. But this should not be a
problem.
I looked forward and found that anything is false at
0001 package Module::CPANTS::Kwalitee::Uses;
in
0018 $me->d->{module}