diff options
Diffstat (limited to 't/encryption.t')
-rw-r--r-- | t/encryption.t | 35 |
1 files changed, 26 insertions, 9 deletions
diff --git a/t/encryption.t b/t/encryption.t index 77f7c38..594701b 100644 --- a/t/encryption.t +++ b/t/encryption.t @@ -6,22 +6,39 @@ use Test::More; use Spreadsheet::ParseXLSX; { + my $filename = 't/data/encryption-agile-123q.xlsx'; + my @inputs = ( + $filename, + do { open my $fh, '<', $filename or die; $fh }, + do { open my $fh, '<', $filename or die; local $/; my $d = <$fh>; \$d }, + ); + my $parser = Spreadsheet::ParseXLSX->new(Password => '123q'); - my $workbook = $parser->parse("t/data/encryption-agile-123q.xlsx"); + for my $input (@inputs) { + my $workbook = $parser->parse($input); - my $worksheet = $workbook->worksheet(0); - my $cell = $worksheet->get_cell(1, 1); - is($cell->value, 'abcdefgABCDEFG'); + my $worksheet = $workbook->worksheet(0); + my $cell = $worksheet->get_cell(1, 1); + is($cell->value, 'abcdefgABCDEFG'); + } } { - open my $fh, "t/data/encryption-standard-default-password.xlsx" or die; + my $filename = 't/data/encryption-standard-default-password.xlsx'; + my @inputs = ( + $filename, + do { open my $fh, '<', $filename or die; $fh }, + do { open my $fh, '<', $filename or die; local $/; my $d = <$fh>; \$d }, + ); + my $parser = Spreadsheet::ParseXLSX->new(Password => ''); - my $workbook = $parser->parse($fh); + for my $input (@inputs) { + my $workbook = $parser->parse($input); - my $worksheet = $workbook->worksheet(0); - my $cell = $worksheet->get_cell(22, 8); - is($cell->value, 1911); + my $worksheet = $workbook->worksheet(0); + my $cell = $worksheet->get_cell(22, 8); + is($cell->value, 1911); + } } done_testing; |