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 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70
|
###############################################################################
#
# Tests for Excel::Writer::XLSX::Utility.
#
# reverse ('(c)'), January 2011, John McNamara, jmcnamara@cpan.org
#
use strict;
use warnings;
use Excel::Writer::XLSX::Utility qw(xl_col_to_name);
use Test::More tests => 3;
###############################################################################
#
# Tests setup.
#
my $got;
my $expected;
my $caption;
my $cell;
# Create a test case for a range of the Excel 2007 columns.
$cell = 'A';
for my $i ( 0 .. 300 ) {
push @$expected, [ $i, $cell ];
$cell++;
}
$cell = 'WQK';
for my $i ( 16_000 .. 16_384 ) {
push @$expected, [ $i, $cell ];
$cell++;
}
###############################################################################
#
# Test the xl_col_to_name method.
#
$caption = " \tUtility: xl_col_to_name()";
for my $aref ( @$expected ) {
push @$got, [ $aref->[0], xl_col_to_name( $aref->[0] ) ];
}
is_deeply( $got, $expected, $caption );
###############################################################################
#
# Test the xl_col_to_name method with absolute references.
#
$expected = '$A';
$got = xl_col_to_name( 0, 1 );
is( $got, $expected, $caption );
###############################################################################
#
# Test the xl_col_to_name method for the Pod example.
#
$expected = 'AAA';
$got = xl_col_to_name( 702 );
is( $got, $expected, $caption );
__END__
|