http://qs321.pair.com?node_id=621030

mifflin has asked for the wisdom of the Perl Monks concerning the following question:

System : SunOS 5.9

Perl : 5.8.0

I've been trying to install IO::All but keep getting the following test errors...

t/file_spec..........NOK 22 + # Failed test (t/file_spec.t at line 39) # got: 'doo/foo/goo/hoo' # expected: 'doo/foo/goo/hoo' t/file_spec..........NOK 23 + # Failed test (t/file_spec.t at line 40) # got: 'goo/hoo' # expected: 'goo/hoo' t/file_spec..........NOK 24 + # Failed test (t/file_spec.t at line 41) # got: 'goo/hoo' # expected: 'goo/hoo' t/file_spec..........NOK 25 + # Failed test (t/file_spec.t at line 43) # got: 'doo/foo/goo/hoo' # expected: 'doo/foo/goo/hoo' t/file_spec..........NOK 26 + # Failed test (t/file_spec.t at line 44) # got: 'goo/hoo' # expected: 'goo/hoo' t/file_spec..........NOK 27 + # Failed test (t/file_spec.t at line 45) # got: 'goo/hoo' # expected: 'goo/hoo' # Looks like you failed 6 tests of 27. t/file_spec..........dubious + Test returned status 6 (wstat 1536, 0x600) DIED. FAILED tests 22-27 Failed 6/27 tests, 77.78% okay
The module only has one prereq. IO::String. I have version 1.08.

Here is the failing test script t/file_spec.t

use lib 't', 'lib'; use strict; use warnings; use Test::More tests => 27; use IO::All; use IO_All_Test; is(io('././t/file_spec.t')->canonpath, f 't/file_spec.t'); is(io('././t/bogus')->canonpath, f 't/bogus'); is(join(';', grep {! /CVS|\.svn/} io->catdir(qw(t mydir))->all), f 't/ +mydir/dir1;t/mydir/dir2;t/mydir/file1;t/mydir/file2;t/mydir/file3'); test_file_contents(io->catfile(qw(t mystuff))->scalar, 't/mystuff'); test_file_contents(io->join(qw(t mystuff))->scalar, 't/mystuff'); is(ref(io->devnull), 'IO::All::File'); ok(io->devnull->print('IO::All')); # Not supporting class calls anymore. Objects only. # ok(IO::All->devnull->print('IO::All')); ok(io->rootdir->is_dir); ok(io->tmpdir->is_dir); ok(io->updir->is_dir); like(io->case_tolerant, qr/^[01]$/); ok(io('/foo/bar')->is_absolute); ok(not io('foo/bar')->is_absolute); my @path1 = io->path; shift @path1 if $path1[0]->name eq '.'; my $path2 = $ENV{PATH}; $path2 =~ s/^\.[;:]//; is(scalar(@path1), scalar( @{[split((($^O eq 'MSWin32') ? ';' : ':'), $path2)]})); my ($v, $d, $f) = io('foo/bar')->splitpath; is($d, 'foo/'); is($f, 'bar'); my @dirs = io('foo/bar/baz')->splitdir; is(scalar(@dirs), 3); is(join('+', @dirs), 'foo+bar+baz'); test_file_contents(io->catpath('', qw(t mystuff))->scalar, 't/mystuff' +); is(io('/foo/bar/baz')->abs2rel('/foo'), f 'bar/baz'); is(io('foo/bar/baz')->rel2abs('/moo'), f '/moo/foo/bar/baz'); is(io->dir('doo/foo')->catdir('goo', 'hoo'), f 'doo/foo/goo/hoo'); is(io->dir->catdir('goo', 'hoo'), f 'goo/hoo'); is(io->catdir('goo', 'hoo'), f 'goo/hoo'); is(io->file('doo/foo')->catfile('goo', 'hoo'), f 'doo/foo/goo/hoo'); is(io->file->catfile('goo', 'hoo'), f 'goo/hoo'); is(io->catfile('goo', 'hoo'), f 'goo/hoo');
Any ideas?

Replies are listed 'Best First'.
Re: Problems install IO::All 0.38
by Anonymous Monk on Jun 14, 2007 at 03:25 UTC
Re: Problems install IO::All 0.38
by sago (Scribe) on Jun 14, 2007 at 11:28 UTC

    Use perl version 5.8.8 build 820.
    Go to ppm (c:\ppm)
    In ppm, go to edit->preferences->repositories->add
    http://ppm4.activestate.com/MSWin32-x86/5.8/820/package.xml and
    http://ppm.activestate.com/PPMPackages/zips/8xx-builds-only/Windows/
    Then try to install IO-All module,execute the script and see.
      IO::All is pure-perl; by going through ppm you skip the test suite.