Added more tests and fixed formats to work correctly w/multiple templates.
[p5sagit/Excel-Template.git] / t / 023_relative_values.t
1 BEGIN{ $^W = 0 }
2 use strict;
3
4 use Test::More tests => 4;
5
6 use lib 't';
7 use mock;
8 mock::reset;
9
10 my $CLASS = 'Excel::Template';
11 use_ok( $CLASS );
12
13 my $object = $CLASS->new(
14     file => \*DATA,
15 );
16 isa_ok( $object, $CLASS );
17
18 ok( $object->write_file( 'filename' ), 'Successfuly wrote file' );
19
20 my @calls = mock::get_calls;
21 is( join( $/, @calls, '' ), <<__END_EXPECTED__, 'Calls match up' );
22 Spreadsheet::WriteExcel::new( 'filename' )
23 Spreadsheet::WriteExcel::add_format( '' )
24 Spreadsheet::WriteExcel::add_worksheet( '' )
25 Spreadsheet::WriteExcel::Worksheet::new( '' )
26 Spreadsheet::WriteExcel::Worksheet::set_row( '0', '8' )
27 Spreadsheet::WriteExcel::Worksheet::write( '0', '0', '', '1' )
28 Spreadsheet::WriteExcel::Worksheet::set_row( '1', '10' )
29 Spreadsheet::WriteExcel::Worksheet::write( '1', '0', '', '1' )
30 Spreadsheet::WriteExcel::Worksheet::set_row( '2', '6' )
31 Spreadsheet::WriteExcel::Worksheet::write( '2', '0', '', '1' )
32 Spreadsheet::WriteExcel::Worksheet::set_row( '3', '16' )
33 Spreadsheet::WriteExcel::Worksheet::write( '3', '0', '', '1' )
34 Spreadsheet::WriteExcel::Worksheet::set_row( '4', '4' )
35 Spreadsheet::WriteExcel::Worksheet::write( '4', '0', '', '1' )
36 Spreadsheet::WriteExcel::Worksheet::set_row( '5', '8' )
37 Spreadsheet::WriteExcel::Worksheet::write( '5', '0', '', '1' )
38 Spreadsheet::WriteExcel::close( '' )
39 __END_EXPECTED__
40
41 __DATA__
42 <workbook>
43   <worksheet height="8">
44     <row>
45       <cell />
46     </row>
47     <row height="+2">
48       <cell />
49     </row>
50     <row height="-2">
51       <cell />
52     </row>
53     <row height="*2">
54       <cell />
55     </row>
56     <row height="/2">
57       <cell />
58     </row>
59     <row height="/0">
60       <cell />
61     </row>
62   </worksheet>
63 </workbook>
64