|
Packit |
0bf95d |
#!/usr/bin/perl
|
|
Packit |
0bf95d |
|
|
Packit |
0bf95d |
# These are regression tests for:
|
|
Packit |
0bf95d |
# http://rt.cpan.org/Public/Bug/Display.html?id=27463
|
|
Packit |
0bf95d |
# http://rt.cpan.org/Public/Bug/Display.html?id=76780
|
|
Packit |
0bf95d |
#
|
|
Packit |
0bf95d |
# It tests that one can add files to the archive whose filenames are "0".
|
|
Packit |
0bf95d |
|
|
Packit |
0bf95d |
use strict;
|
|
Packit |
0bf95d |
|
|
Packit |
0bf95d |
BEGIN {
|
|
Packit |
0bf95d |
$| = 1;
|
|
Packit |
0bf95d |
$^W = 1;
|
|
Packit |
0bf95d |
}
|
|
Packit |
0bf95d |
use Test::More tests => 3;
|
|
Packit |
0bf95d |
use Archive::Zip;
|
|
Packit |
0bf95d |
|
|
Packit |
0bf95d |
use File::Path;
|
|
Packit |
0bf95d |
use File::Spec;
|
|
Packit |
0bf95d |
|
|
Packit |
0bf95d |
use lib 't';
|
|
Packit |
0bf95d |
use common;
|
|
Packit |
0bf95d |
|
|
Packit |
0bf95d |
mkpath([File::Spec->catdir(TESTDIR, 'folder')]);
|
|
Packit |
0bf95d |
|
|
Packit |
0bf95d |
my $zero_file = File::Spec->catfile(TESTDIR, 'folder', "0");
|
|
Packit |
0bf95d |
open(O, ">$zero_file");
|
|
Packit |
0bf95d |
print O "File 0\n";
|
|
Packit |
0bf95d |
close(O);
|
|
Packit |
0bf95d |
|
|
Packit |
0bf95d |
my $one_file = File::Spec->catfile(TESTDIR, 'folder', '1');
|
|
Packit |
0bf95d |
open(O, ">$one_file");
|
|
Packit |
0bf95d |
print O "File 1\n";
|
|
Packit |
0bf95d |
close(O);
|
|
Packit |
0bf95d |
|
|
Packit |
0bf95d |
my $archive = Archive::Zip->new;
|
|
Packit |
0bf95d |
|
|
Packit |
0bf95d |
$archive->addTree(File::Spec->catfile(TESTDIR, 'folder'), 'folder',);
|
|
Packit |
0bf95d |
|
|
Packit |
0bf95d |
# TEST
|
|
Packit |
0bf95d |
ok(
|
|
Packit |
0bf95d |
scalar(grep { $_ eq "folder/0" } $archive->memberNames()),
|
|
Packit |
0bf95d |
"Checking that a file called '0' was added properly"
|
|
Packit |
0bf95d |
);
|
|
Packit |
0bf95d |
|
|
Packit |
0bf95d |
rmtree([File::Spec->catdir(TESTDIR, 'folder')]);
|
|
Packit |
0bf95d |
|
|
Packit |
0bf95d |
# Cannot create member called "0" with addString
|
|
Packit |
0bf95d |
{
|
|
Packit |
0bf95d |
# Create member "0" with addString
|
|
Packit |
0bf95d |
my $archive = Archive::Zip->new;
|
|
Packit |
0bf95d |
my $string_member = $archive->addString(TESTSTRING => 0);
|
|
Packit |
0bf95d |
$archive->writeToFileNamed(OUTPUTZIP);
|
|
Packit |
0bf95d |
}
|
|
Packit |
0bf95d |
|
|
Packit |
0bf95d |
{
|
|
Packit |
0bf95d |
|
|
Packit |
0bf95d |
# Read member "0"
|
|
Packit |
0bf95d |
my $archive = Archive::Zip->new;
|
|
Packit |
0bf95d |
is($archive->read(OUTPUTZIP), Archive::Zip::AZ_OK);
|
|
Packit |
0bf95d |
ok(scalar(grep { $_ eq "0" } $archive->memberNames()),
|
|
Packit |
0bf95d |
"Checking that a file called '0' was added properly by addString");
|
|
Packit |
0bf95d |
}
|
|
Packit |
0bf95d |
unlink(OUTPUTZIP);
|