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.
- data/CHANGES +124 -0
- data/CVS/Entries +10 -0
- data/CVS/Repository +1 -0
- data/CVS/Root +1 -0
- data/README +69 -0
- data/doc/CVS/Entries +3 -0
- data/doc/CVS/Repository +1 -0
- data/doc/CVS/Root +1 -0
- data/doc/format.txt +330 -0
- data/doc/spreadsheet.txt +178 -0
- data/examples/CVS/Entries +3 -0
- data/examples/CVS/Repository +1 -0
- data/examples/CVS/Root +1 -0
- data/examples/example_basic.rb +27 -0
- data/examples/example_format.rb +69 -0
- data/lib/CVS/Entries +1 -0
- data/lib/CVS/Repository +1 -0
- data/lib/CVS/Root +1 -0
- data/lib/spreadsheet/CVS/Entries +7 -0
- data/lib/spreadsheet/CVS/Repository +1 -0
- data/lib/spreadsheet/CVS/Root +1 -0
- data/lib/spreadsheet/biffwriter.rb +46 -0
- data/lib/spreadsheet/excel.rb +13 -0
- data/lib/spreadsheet/format.rb +359 -0
- data/lib/spreadsheet/olewriter.rb +178 -0
- data/lib/spreadsheet/workbook.rb +279 -0
- data/lib/spreadsheet/worksheet.rb +449 -0
- data/test/CVS/Entries +9 -0
- data/test/CVS/Repository +1 -0
- data/test/CVS/Root +1 -0
- data/test/perl_output/CVS/Entries +10 -0
- data/test/perl_output/CVS/Repository +1 -0
- data/test/perl_output/CVS/Root +1 -0
- data/test/perl_output/README +31 -0
- data/test/perl_output/f_font_biff +0 -0
- data/test/perl_output/f_font_key +1 -0
- data/test/perl_output/f_xf_biff +0 -0
- data/test/perl_output/ole_write_header +0 -0
- data/test/perl_output/ws_colinfo +1 -0
- data/test/perl_output/ws_store_dimensions +1 -0
- data/test/perl_output/ws_store_selection +1 -0
- data/test/perl_output/ws_store_window2 +1 -0
- data/test/tc_all.rb +6 -0
- data/test/tc_biff.rb +62 -0
- data/test/tc_excel.rb +26 -0
- data/test/tc_format.rb +133 -0
- data/test/tc_ole.rb +125 -0
- data/test/tc_workbook.rb +71 -0
- data/test/tc_worksheet.rb +142 -0
- data/test/ts_all.rb +9 -0
- 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
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
|
+
|