blob: 504b4bfb1e9278b55f71941d427bc383aadcf046 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
|
$WriteRepo = catfile( qw(t local WRITEREPO) );
%MYCPAN => ( dir => catfile( qw(t read MYCPAN) ), );
my @files = qw(modulelist test-0.01.tar.gz);
$MYCPAN{@files} = map { catfile( $MYCPAN{dir}, $_ ) } @files;
return 1 if ( -r '/usr/local/etc/mcpani' );
return 1 if ( -r '/etc/mcpani' );
# parsecfg()
dies_ok { $mcpi->parsecfg( catfile( qw(t .mcpani config_bad) ) ); }
'Missing config option';
mkdir catfile( qw(t local MYCPAN) );
$mcpi->parsecfg( catfile( qw(t .mcpani config_noread) ) );
dies_ok { $mcpi->readlist } 'unreadable file';
$mcpi->parsecfg( catfile( qw(t .mcpani config) ) );
$mcpi->parsecfg( catfile( qw(t .mcpani config_norepo) ) );
dies_ok {
$mcpi->add(
module => 'CPAN::Mini::Inject',
authorid => 'SSORICHE',
version => '0.01',
file => 'test-0.01.tar.gz'
);
}
'Missing config repository';
$mcpi->parsecfg( catfile( qw(t .mcpani config_read) ) );
$mcpi->parsecfg( catfile( qw(t .mcpani config_nowrite) ) );
dies_ok { $mcpi->writelist } 'fail write file';
mkdir catfile( qw(t local WRITEREPO) );
open WRITEFILE, '>', catfile( qw(t local WRITEREPO modulelist) );
close WRITEFILE;
chmod 0222, catfile( qw(t local WRITEREPO modulelist) );
chmod 0555, catfile( qw(t read MYCPAN) );
chmod 0444, catfile( qw(t read MYCPAN modulelist) );
chmod 0444, catfile( qw(t read MYCPAN test-0.01.tar.gz) );
|