Added more tests for conditionals. Need to fix linking in POD. - Intermediate commit!
[p5sagit/Excel-Template.git] / t / 011_conditional.t
1 use strict;
2
3 use Test::More tests => 5;
4
5 use lib 't';
6 use mock;
7 mock::reset;
8
9 my $CLASS = 'Excel::Template';
10 use_ok( $CLASS );
11
12 my $object = $CLASS->new(
13     filename => 't/011.xml',
14 );
15 isa_ok( $object, $CLASS );
16
17 ok(
18     $object->param( 
19         loopy => [
20             { int => 0, char => 'n' },
21             { int => 0, char => 'y' },
22             { int => 1, char => 'z' },
23             { int => -1, char => 'y' },
24         ],
25     ),
26     'Parameters set',
27 );
28
29 ok( $object->write_file( 'filename' ), 'Something returned' );
30
31 my @calls = mock::get_calls;
32 is( join( $/, @calls, '' ), <<__END_EXPECTED__, 'Calls match up' );
33 Spreadsheet::WriteExcel::new( 'filename' )
34 Spreadsheet::WriteExcel::add_format( '' )
35 Spreadsheet::WriteExcel::add_worksheet( 'conditional' )
36 Spreadsheet::WriteExcel::Worksheet::new( '' )
37 Spreadsheet::WriteExcel::Worksheet::write( '0', '0', 'bool false', '1' )
38 Spreadsheet::WriteExcel::Worksheet::write( '0', '1', 'num == passes', '1' )
39 Spreadsheet::WriteExcel::Worksheet::write( '0', '2', 'num >= passes', '1' )
40 Spreadsheet::WriteExcel::Worksheet::write( '0', '3', 'num <= passes', '1' )
41 Spreadsheet::WriteExcel::Worksheet::write( '0', '4', 'char ne passes', '1' )
42 Spreadsheet::WriteExcel::Worksheet::write( '0', '5', 'char lt passes', '1' )
43 Spreadsheet::WriteExcel::Worksheet::write( '0', '6', 'char le passes', '1' )
44 Spreadsheet::WriteExcel::Worksheet::write( '1', '0', 'bool false', '1' )
45 Spreadsheet::WriteExcel::Worksheet::write( '1', '1', 'num == passes', '1' )
46 Spreadsheet::WriteExcel::Worksheet::write( '1', '2', 'num >= passes', '1' )
47 Spreadsheet::WriteExcel::Worksheet::write( '1', '3', 'num <= passes', '1' )
48 Spreadsheet::WriteExcel::Worksheet::write( '1', '4', 'char eq passes', '1' )
49 Spreadsheet::WriteExcel::Worksheet::write( '1', '5', 'char ge passes', '1' )
50 Spreadsheet::WriteExcel::Worksheet::write( '1', '6', 'char le passes', '1' )
51 Spreadsheet::WriteExcel::Worksheet::write( '2', '0', 'bool true', '1' )
52 Spreadsheet::WriteExcel::Worksheet::write( '2', '1', 'num != passes', '1' )
53 Spreadsheet::WriteExcel::Worksheet::write( '2', '2', 'num > passes', '1' )
54 Spreadsheet::WriteExcel::Worksheet::write( '2', '3', 'num >= passes', '1' )
55 Spreadsheet::WriteExcel::Worksheet::write( '2', '4', 'char ne passes', '1' )
56 Spreadsheet::WriteExcel::Worksheet::write( '2', '5', 'char gt passes', '1' )
57 Spreadsheet::WriteExcel::Worksheet::write( '2', '6', 'char ge passes', '1' )
58 Spreadsheet::WriteExcel::Worksheet::write( '3', '0', 'bool true', '1' )
59 Spreadsheet::WriteExcel::Worksheet::write( '3', '1', 'num != passes', '1' )
60 Spreadsheet::WriteExcel::Worksheet::write( '3', '2', 'num < passes', '1' )
61 Spreadsheet::WriteExcel::Worksheet::write( '3', '3', 'num <= passes', '1' )
62 Spreadsheet::WriteExcel::Worksheet::write( '3', '4', 'char eq passes', '1' )
63 Spreadsheet::WriteExcel::Worksheet::write( '3', '5', 'char ge passes', '1' )
64 Spreadsheet::WriteExcel::Worksheet::write( '3', '6', 'char le passes', '1' )
65 Spreadsheet::WriteExcel::close( '' )
66 __END_EXPECTED__