spreadsheet-excel 0.3.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (51) hide show
  1. data/CHANGES +124 -0
  2. data/CVS/Entries +10 -0
  3. data/CVS/Repository +1 -0
  4. data/CVS/Root +1 -0
  5. data/README +69 -0
  6. data/doc/CVS/Entries +3 -0
  7. data/doc/CVS/Repository +1 -0
  8. data/doc/CVS/Root +1 -0
  9. data/doc/format.txt +330 -0
  10. data/doc/spreadsheet.txt +178 -0
  11. data/examples/CVS/Entries +3 -0
  12. data/examples/CVS/Repository +1 -0
  13. data/examples/CVS/Root +1 -0
  14. data/examples/example_basic.rb +27 -0
  15. data/examples/example_format.rb +69 -0
  16. data/lib/CVS/Entries +1 -0
  17. data/lib/CVS/Repository +1 -0
  18. data/lib/CVS/Root +1 -0
  19. data/lib/spreadsheet/CVS/Entries +7 -0
  20. data/lib/spreadsheet/CVS/Repository +1 -0
  21. data/lib/spreadsheet/CVS/Root +1 -0
  22. data/lib/spreadsheet/biffwriter.rb +46 -0
  23. data/lib/spreadsheet/excel.rb +13 -0
  24. data/lib/spreadsheet/format.rb +359 -0
  25. data/lib/spreadsheet/olewriter.rb +178 -0
  26. data/lib/spreadsheet/workbook.rb +279 -0
  27. data/lib/spreadsheet/worksheet.rb +449 -0
  28. data/test/CVS/Entries +9 -0
  29. data/test/CVS/Repository +1 -0
  30. data/test/CVS/Root +1 -0
  31. data/test/perl_output/CVS/Entries +10 -0
  32. data/test/perl_output/CVS/Repository +1 -0
  33. data/test/perl_output/CVS/Root +1 -0
  34. data/test/perl_output/README +31 -0
  35. data/test/perl_output/f_font_biff +0 -0
  36. data/test/perl_output/f_font_key +1 -0
  37. data/test/perl_output/f_xf_biff +0 -0
  38. data/test/perl_output/ole_write_header +0 -0
  39. data/test/perl_output/ws_colinfo +1 -0
  40. data/test/perl_output/ws_store_dimensions +1 -0
  41. data/test/perl_output/ws_store_selection +1 -0
  42. data/test/perl_output/ws_store_window2 +1 -0
  43. data/test/tc_all.rb +6 -0
  44. data/test/tc_biff.rb +62 -0
  45. data/test/tc_excel.rb +26 -0
  46. data/test/tc_format.rb +133 -0
  47. data/test/tc_ole.rb +125 -0
  48. data/test/tc_workbook.rb +71 -0
  49. data/test/tc_worksheet.rb +142 -0
  50. data/test/ts_all.rb +9 -0
  51. metadata +103 -0
@@ -0,0 +1,142 @@
1
+ ######################################################################
2
+ # tc_worksheet.rb
3
+ #
4
+ # Test suite for the Worksheet class (worksheet.rb).
5
+ #
6
+ # I do lots of octal dump comparisons because I don't trust simply
7
+ # visually comparing the file contents (you never know if there's
8
+ # a hidden space or newline somewhere). Besides, it can't hurt.
9
+ #######################################################################
10
+ base = File.basename(Dir.pwd)
11
+ if base == "test" || base =~ /spreadsheet/i
12
+ Dir.chdir("..") if base == "test"
13
+ $LOAD_PATH.unshift(Dir.pwd + "/lib/spreadsheet")
14
+ Dir.chdir("test") rescue nil
15
+ end
16
+
17
+ require "test/unit"
18
+ require "biffwriter"
19
+ require "olewriter"
20
+ require "format"
21
+ require "workbook"
22
+ require "worksheet"
23
+ require "ftools"
24
+
25
+ class TC_Worksheet < Test::Unit::TestCase
26
+ def setup
27
+ @ws = Worksheet.new("test",0)
28
+ @perldir = "perl_output/"
29
+ @format = Format.new(:color=>"green")
30
+ end
31
+
32
+ def test_methods_exist
33
+ assert_respond_to(@ws, :write)
34
+ assert_respond_to(@ws, :write_blank)
35
+ assert_respond_to(@ws, :write_row)
36
+ assert_respond_to(@ws, :write_column)
37
+ end
38
+
39
+ def test_format_rectangle
40
+ assert_respond_to(@ws, :format_rectangle)
41
+ assert_nothing_raised{ @ws.format_rectangle(0, 0, 2, 2, @format) }
42
+ assert_raises(TypeError){ @ws.format_rectangle(0, 0, 2, 2, "bogus") }
43
+ end
44
+
45
+ def test_methods_no_error
46
+ assert_nothing_raised{ @ws.write(0,0,nil) }
47
+ assert_nothing_raised{ @ws.write(0,0,"Hello") }
48
+ assert_nothing_raised{ @ws.write(0,0,888) }
49
+ assert_nothing_raised{ @ws.write_row(0,0,nil) }
50
+ assert_nothing_raised{ @ws.write_row(0,0,["one","two","three"]) }
51
+ assert_nothing_raised{ @ws.write_row(0,0,[1,2,3]) }
52
+ assert_nothing_raised{ @ws.write_column(0,0,nil) }
53
+ assert_nothing_raised{ @ws.write_column(0,0,["one","two","three"]) }
54
+ assert_nothing_raised{ @ws.write_column(0,0,[1,2,3]) }
55
+ assert_nothing_raised{ @ws.write_blank(0,0,nil) }
56
+ assert_nothing_raised{ @ws.write_url(0,0,"http://www.ruby-lang.org") }
57
+ end
58
+
59
+ def test_store_dimensions
60
+ file = "delete_this"
61
+ File.open(file,"w+"){ |f| f.print @ws.store_dimensions }
62
+ pf = @perldir + "ws_store_dimensions"
63
+ p_od = IO.readlines(pf).to_s.dump
64
+ r_od = IO.readlines(file).to_s.dump
65
+ assert_equal(2,File.size(file),"Bad file size")
66
+ assert_equal(p_od, r_od,"Octal dumps are not identical")
67
+ File.delete(file)
68
+ end
69
+
70
+ def test_store_window2
71
+ file = "delete_this"
72
+ File.open(file,"w+"){ |f| f.print @ws.store_window2 }
73
+ pf = @perldir + "ws_store_window2"
74
+ p_od = IO.readlines(pf).to_s.dump
75
+ r_od = IO.readlines(file).to_s.dump
76
+ assert_equal(2,File.size(file),"Bad file size")
77
+ assert_equal(p_od, r_od,"Octal dumps are not identical")
78
+ File.delete(file)
79
+ end
80
+
81
+ def test_store_selection
82
+ file = "delete_this"
83
+ File.open(file,"w+"){ |f| f.print @ws.store_selection }
84
+ pf = @perldir + "ws_store_selection"
85
+ p_od = IO.readlines(pf).to_s.dump
86
+ r_od = IO.readlines(file).to_s.dump
87
+ assert_equal(2,File.size(file),"Bad file size")
88
+ assert_equal(p_od, r_od,"Octal dumps are not identical")
89
+ File.delete(file)
90
+ end
91
+
92
+ def test_store_colinfo_output
93
+ file = "delete_this"
94
+ File.open(file,"w+"){ |f| f.print @ws.store_colinfo }
95
+ pf = @perldir + "ws_colinfo"
96
+ p_od = IO.readlines(pf).to_s.dump
97
+ r_od = IO.readlines(file).to_s.dump
98
+ assert_equal(2,File.size(file),"Invalid size for store_colinfo")
99
+ assert_equal(p_od,r_od,"Perl and Ruby octal dumps don't match")
100
+ File.delete(file)
101
+ end
102
+
103
+ def test_write_syntax
104
+ assert_nothing_raised{@ws.write(0,0,"Hello")}
105
+ assert_nothing_raised{@ws.write(0,0,666)}
106
+ end
107
+
108
+ def test_write_string
109
+ file = "delete_this"
110
+ @ws.write(0,0,"Hello")
111
+ File.open(file,"w+"){ |f| f.print(@ws.data) }
112
+ assert_equal(17,File.size(file),"incorrect file size")
113
+ File.delete(file)
114
+ end
115
+
116
+ def test_write_number
117
+ file = "delete_this"
118
+ @ws.write(0,0,6789)
119
+ File.open(file,"w+"){ |f| f.print(@ws.data) }
120
+ assert_equal(18,File.size(file),"incorrect file size")
121
+ File.delete(file)
122
+ end
123
+
124
+ def test_format_row
125
+ assert_nothing_raised{ @ws.format_row(3,nil) }
126
+ assert_nothing_raised{ @ws.format_row(2,10) }
127
+ assert_nothing_raised{ @ws.format_row(1,25,@format) }
128
+ assert_nothing_raised{ @ws.format_row(4..6,nil,@format) }
129
+ end
130
+
131
+ def test_format_column
132
+ assert_nothing_raised{ @ws.format_column(3,nil) }
133
+ assert_nothing_raised{ @ws.format_column(2,10) }
134
+ assert_nothing_raised{ @ws.format_column(1,25,@format) }
135
+ assert_nothing_raised{ @ws.format_column(4..6,nil,@format) }
136
+ end
137
+
138
+ def teardown
139
+ @ws = nil
140
+ @format = nil
141
+ end
142
+ end
data/test/ts_all.rb ADDED
@@ -0,0 +1,9 @@
1
+ $LOAD_PATH.unshift(Dir.pwd)
2
+ $LOAD_PATH.unshift(Dir.pwd + "/test")
3
+
4
+ require "tc_biff"
5
+ require "tc_ole"
6
+ require "tc_workbook"
7
+ require "tc_worksheet"
8
+ require "tc_format"
9
+ require "tc_excel"
metadata ADDED
@@ -0,0 +1,103 @@
1
+ --- !ruby/object:Gem::Specification
2
+ rubygems_version: 0.8.11
3
+ specification_version: 1
4
+ name: spreadsheet-excel
5
+ version: !ruby/object:Gem::Version
6
+ version: 0.3.4
7
+ date: 2006-06-06 00:00:00 +02:00
8
+ summary: Creates Excel documents on any platform
9
+ require_paths:
10
+ - lib
11
+ email: djberg96@gmail.com
12
+ homepage: http://rubyspreadsheet.sf.net
13
+ rubyforge_project:
14
+ description: Creates Excel documents on any platform
15
+ autorequire:
16
+ default_executable:
17
+ bindir: bin
18
+ has_rdoc: true
19
+ required_ruby_version: !ruby/object:Gem::Version::Requirement
20
+ requirements:
21
+ - - ">"
22
+ - !ruby/object:Gem::Version
23
+ version: 0.0.0
24
+ version:
25
+ platform: ruby
26
+ signing_key:
27
+ cert_chain:
28
+ authors:
29
+ - Daniel Berger
30
+ files:
31
+ - CVS/Root
32
+ - CVS/Repository
33
+ - CVS/Entries
34
+ - doc/CVS
35
+ - doc/format.txt
36
+ - doc/spreadsheet.txt
37
+ - doc/CVS/Root
38
+ - doc/CVS/Repository
39
+ - doc/CVS/Entries
40
+ - examples/CVS
41
+ - examples/example_basic.rb
42
+ - examples/example_format.rb
43
+ - examples/CVS/Root
44
+ - examples/CVS/Repository
45
+ - examples/CVS/Entries
46
+ - lib/CVS
47
+ - lib/spreadsheet
48
+ - lib/CVS/Root
49
+ - lib/CVS/Repository
50
+ - lib/CVS/Entries
51
+ - lib/spreadsheet/CVS
52
+ - lib/spreadsheet/biffwriter.rb
53
+ - lib/spreadsheet/excel.rb
54
+ - lib/spreadsheet/format.rb
55
+ - lib/spreadsheet/olewriter.rb
56
+ - lib/spreadsheet/workbook.rb
57
+ - lib/spreadsheet/worksheet.rb
58
+ - lib/spreadsheet/CVS/Root
59
+ - lib/spreadsheet/CVS/Repository
60
+ - lib/spreadsheet/CVS/Entries
61
+ - test/CVS
62
+ - test/tc_all.rb
63
+ - test/tc_biff.rb
64
+ - test/tc_excel.rb
65
+ - test/tc_format.rb
66
+ - test/tc_ole.rb
67
+ - test/tc_workbook.rb
68
+ - test/tc_worksheet.rb
69
+ - test/ts_all.rb
70
+ - test/perl_output
71
+ - test/CVS/Root
72
+ - test/CVS/Repository
73
+ - test/CVS/Entries
74
+ - test/perl_output/CVS
75
+ - test/perl_output/README
76
+ - test/perl_output/f_font_biff
77
+ - test/perl_output/f_font_key
78
+ - test/perl_output/f_xf_biff
79
+ - test/perl_output/ole_write_header
80
+ - test/perl_output/ws_colinfo
81
+ - test/perl_output/ws_store_dimensions
82
+ - test/perl_output/ws_store_selection
83
+ - test/perl_output/ws_store_window2
84
+ - test/perl_output/CVS/Root
85
+ - test/perl_output/CVS/Repository
86
+ - test/perl_output/CVS/Entries
87
+ - README
88
+ - CHANGES
89
+ test_files:
90
+ - test/ts_all.rb
91
+ rdoc_options: []
92
+
93
+ extra_rdoc_files:
94
+ - README
95
+ - CHANGES
96
+ executables: []
97
+
98
+ extensions: []
99
+
100
+ requirements: []
101
+
102
+ dependencies: []
103
+