spreadsheet 1.3.3 → 1.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.
- checksums.yaml +4 -4
- data/lib/parseexcel/parseexcel.rb +66 -58
- data/lib/parseexcel/parser.rb +1 -1
- data/lib/parseexcel.rb +1 -1
- data/lib/spreadsheet/column.rb +11 -9
- data/lib/spreadsheet/compatibility.rb +3 -1
- data/lib/spreadsheet/datatypes.rb +149 -147
- data/lib/spreadsheet/encodings.rb +20 -16
- data/lib/spreadsheet/errors.rb +2 -2
- data/lib/spreadsheet/excel/error.rb +23 -22
- data/lib/spreadsheet/excel/internals/biff5.rb +11 -11
- data/lib/spreadsheet/excel/internals/biff8.rb +13 -13
- data/lib/spreadsheet/excel/internals.rb +451 -451
- data/lib/spreadsheet/excel/offset.rb +32 -31
- data/lib/spreadsheet/excel/password_hash.rb +18 -18
- data/lib/spreadsheet/excel/reader/biff5.rb +34 -35
- data/lib/spreadsheet/excel/reader/biff8.rb +234 -222
- data/lib/spreadsheet/excel/reader.rb +1320 -1274
- data/lib/spreadsheet/excel/rgb.rb +91 -91
- data/lib/spreadsheet/excel/row.rb +99 -91
- data/lib/spreadsheet/excel/sst_entry.rb +40 -38
- data/lib/spreadsheet/excel/workbook.rb +86 -76
- data/lib/spreadsheet/excel/worksheet.rb +125 -107
- data/lib/spreadsheet/excel/writer/biff8.rb +56 -55
- data/lib/spreadsheet/excel/writer/format.rb +273 -256
- data/lib/spreadsheet/excel/writer/n_worksheet.rb +837 -798
- data/lib/spreadsheet/excel/writer/workbook.rb +671 -635
- data/lib/spreadsheet/excel/writer/worksheet.rb +898 -861
- data/lib/spreadsheet/excel/writer.rb +1 -1
- data/lib/spreadsheet/excel.rb +18 -11
- data/lib/spreadsheet/font.rb +30 -26
- data/lib/spreadsheet/format.rb +74 -59
- data/lib/spreadsheet/link.rb +7 -5
- data/lib/spreadsheet/note.rb +6 -6
- data/lib/spreadsheet/noteObject.rb +5 -5
- data/lib/spreadsheet/row.rb +33 -23
- data/lib/spreadsheet/version.rb +1 -1
- data/lib/spreadsheet/workbook.rb +27 -13
- data/lib/spreadsheet/worksheet.rb +102 -68
- data/lib/spreadsheet/writer.rb +3 -0
- data/lib/spreadsheet.rb +12 -15
- data/test/excel/reader.rb +8 -8
- data/test/excel/row.rb +35 -31
- data/test/excel/writer/workbook.rb +18 -16
- data/test/excel/writer/worksheet.rb +10 -8
- data/test/font.rb +44 -32
- data/test/format.rb +38 -33
- data/test/integration.rb +627 -598
- data/test/row.rb +5 -3
- data/test/suite.rb +7 -7
- data/test/workbook.rb +15 -14
- data/test/workbook_protection.rb +5 -5
- data/test/worksheet.rb +36 -34
- metadata +48 -6
@@ -1,10 +1,10 @@
|
|
1
1
|
#!/usr/bin/env ruby
|
2
2
|
# Excel::Writer::TestWorkbook -- Spreadsheet -- 20.07.2011 -- vanderhoorn@gmail.com
|
3
3
|
|
4
|
-
$: << File.expand_path(
|
4
|
+
$: << File.expand_path("../../../lib", File.dirname(__FILE__))
|
5
5
|
|
6
|
-
require
|
7
|
-
require
|
6
|
+
require "test/unit"
|
7
|
+
require "spreadsheet"
|
8
8
|
|
9
9
|
module Spreadsheet
|
10
10
|
module Excel
|
@@ -16,44 +16,47 @@ module Spreadsheet
|
|
16
16
|
assert_equal @book.worksheets.size, 0
|
17
17
|
@workbook_writer = Excel::Writer::Workbook.new @book
|
18
18
|
end
|
19
|
+
|
19
20
|
def test_sanitize_worksheets
|
20
21
|
assert_nothing_raised { @workbook_writer.sanitize_worksheets @book.worksheets }
|
21
22
|
end
|
23
|
+
|
22
24
|
def test_collect_formats
|
23
25
|
assert_equal 17, @workbook_writer.collect_formats(@book).length # Expected for vanilla
|
24
26
|
sheet = @book.create_worksheet
|
25
|
-
rowi
|
27
|
+
rowi = -1
|
26
28
|
|
27
29
|
f1 = Spreadsheet::Format.new
|
28
|
-
sheet.row(rowi+=1).default_format = f1
|
30
|
+
sheet.row(rowi += 1).default_format = f1
|
29
31
|
assert_equal 18, @workbook_writer.collect_formats(@book).length
|
30
32
|
|
31
33
|
f2 = Spreadsheet::Format.new
|
32
|
-
sheet.row(rowi+=1).default_format = f2
|
34
|
+
sheet.row(rowi += 1).default_format = f2
|
33
35
|
assert_equal 19, @workbook_writer.collect_formats(@book).length
|
34
36
|
|
35
|
-
sheet.row(rowi
|
37
|
+
sheet.row(rowi + 1).default_format = f2
|
36
38
|
assert_equal 19, @workbook_writer.collect_formats(@book).length # Ignores duplicates
|
37
39
|
end
|
40
|
+
|
38
41
|
def test_xf_index
|
39
42
|
sheet = @book.create_worksheet
|
40
|
-
rowi
|
43
|
+
rowi = -1
|
41
44
|
|
42
45
|
f1 = Spreadsheet::Format.new
|
43
|
-
sheet.row(rowi+=1).default_format = f1
|
46
|
+
sheet.row(rowi += 1).default_format = f1
|
44
47
|
@workbook_writer.collect_formats(@book)
|
45
48
|
assert_equal 17, @workbook_writer.xf_index(@book, f1)
|
46
49
|
|
47
50
|
f2 = Spreadsheet::Format.new
|
48
|
-
sheet.row(rowi
|
51
|
+
sheet.row(rowi + 1).default_format = f2
|
49
52
|
@workbook_writer.collect_formats(@book)
|
50
53
|
assert_equal 18, @workbook_writer.xf_index(@book, f2)
|
51
|
-
|
52
54
|
end
|
55
|
+
|
53
56
|
def test_write_fonts
|
54
57
|
num_written = 0
|
55
58
|
sheet = @book.create_worksheet
|
56
|
-
rowi
|
59
|
+
rowi = -1
|
57
60
|
# Stub inner #write_font as a counter:
|
58
61
|
(class << @workbook_writer; self; end).send(:define_method, :write_font) do |*args|
|
59
62
|
num_written += 1
|
@@ -66,7 +69,7 @@ module Spreadsheet
|
|
66
69
|
assert_equal 1, num_written # Default format's font
|
67
70
|
|
68
71
|
f1 = Spreadsheet::Format.new
|
69
|
-
sheet.row(rowi+=1).default_format = f1
|
72
|
+
sheet.row(rowi += 1).default_format = f1
|
70
73
|
num_written = 0
|
71
74
|
@workbook_writer.collect_formats(@book)
|
72
75
|
@workbook_writer.write_fonts(@book, io)
|
@@ -74,7 +77,7 @@ module Spreadsheet
|
|
74
77
|
|
75
78
|
f2 = Spreadsheet::Format.new
|
76
79
|
f2.font = Spreadsheet::Font.new("Foo")
|
77
|
-
sheet.row(rowi+=1).default_format = f2
|
80
|
+
sheet.row(rowi += 1).default_format = f2
|
78
81
|
num_written = 0
|
79
82
|
@workbook_writer.collect_formats(@book)
|
80
83
|
@workbook_writer.write_fonts(@book, io)
|
@@ -82,12 +85,11 @@ module Spreadsheet
|
|
82
85
|
|
83
86
|
f3 = Spreadsheet::Format.new
|
84
87
|
f3.font = f2.font # Re-use previous font
|
85
|
-
sheet.row(rowi
|
88
|
+
sheet.row(rowi + 1).default_format = f3
|
86
89
|
num_written = 0
|
87
90
|
@workbook_writer.collect_formats(@book)
|
88
91
|
@workbook_writer.write_fonts(@book, io)
|
89
92
|
assert_equal 2, num_written # 2 distinct fonts total still
|
90
|
-
|
91
93
|
end
|
92
94
|
end
|
93
95
|
end
|
@@ -1,8 +1,8 @@
|
|
1
1
|
#!/usr/bin/env ruby
|
2
2
|
# Excel::Writer::TestWorksheet -- Spreadheet -- 21.11.2007 -- hwyss@ywesee.com
|
3
3
|
|
4
|
-
require
|
5
|
-
require
|
4
|
+
require "test/unit"
|
5
|
+
require "spreadsheet/excel/writer/worksheet"
|
6
6
|
|
7
7
|
module Spreadsheet
|
8
8
|
module Excel
|
@@ -23,7 +23,11 @@ module Spreadsheet
|
|
23
23
|
attr_accessor :idx, :first_used, :first_unused, :height, :outline_level
|
24
24
|
|
25
25
|
def initialize
|
26
|
-
@idx, @first_used, @first_unused, @height, @outline_level = 0,0,0,0,1
|
26
|
+
@idx, @first_used, @first_unused, @height, @outline_level = 0, 0, 0, 0, 1
|
27
|
+
end
|
28
|
+
|
29
|
+
def respond_to_missing? *args
|
30
|
+
super
|
27
31
|
end
|
28
32
|
|
29
33
|
def method_missing name, *args
|
@@ -38,7 +42,7 @@ module Spreadsheet
|
|
38
42
|
|
39
43
|
sheet.write_row row
|
40
44
|
|
41
|
-
assert_equal
|
45
|
+
assert_equal "", sheet.data
|
42
46
|
end
|
43
47
|
|
44
48
|
def test_write_row_should_write_if_any_column_is_used
|
@@ -61,20 +65,18 @@ module Spreadsheet
|
|
61
65
|
writer.strings
|
62
66
|
)
|
63
67
|
|
64
|
-
sheet.row(rowi+=1).concat(["Hello", "World"])
|
68
|
+
sheet.row(rowi += 1).concat(["Hello", "World"])
|
65
69
|
assert_equal(
|
66
70
|
{"Hello" => 1, "World" => 1},
|
67
71
|
writer.strings
|
68
72
|
)
|
69
73
|
|
70
|
-
sheet.row(rowi
|
74
|
+
sheet.row(rowi + 1).concat(["Goodbye", "Cruel", "World", 2012])
|
71
75
|
assert_equal(
|
72
76
|
{"Hello" => 1, "Goodbye" => 1, "Cruel" => 1, "World" => 2},
|
73
77
|
writer.strings
|
74
78
|
)
|
75
|
-
|
76
79
|
end
|
77
|
-
|
78
80
|
end
|
79
81
|
end
|
80
82
|
end
|
data/test/font.rb
CHANGED
@@ -1,16 +1,17 @@
|
|
1
1
|
#!/usr/bin/env ruby
|
2
2
|
# TestFont -- Spreadsheet -- 09.10.2008 -- hwyss@ywesee.com
|
3
3
|
|
4
|
-
$: << File.expand_path(
|
4
|
+
$: << File.expand_path("../lib", File.dirname(__FILE__))
|
5
5
|
|
6
|
-
require
|
7
|
-
require
|
6
|
+
require "test/unit"
|
7
|
+
require "spreadsheet"
|
8
8
|
|
9
9
|
module Spreadsheet
|
10
10
|
class TestFont < Test::Unit::TestCase
|
11
11
|
def setup
|
12
|
-
@font = Font.new
|
12
|
+
@font = Font.new "Arial"
|
13
13
|
end
|
14
|
+
|
14
15
|
def test_italic
|
15
16
|
assert_equal false, @font.italic
|
16
17
|
@font.italic!
|
@@ -20,33 +21,37 @@ module Spreadsheet
|
|
20
21
|
@font.italic = 1
|
21
22
|
assert_equal true, @font.italic
|
22
23
|
end
|
24
|
+
|
23
25
|
def test_encoding
|
24
26
|
assert_equal :default, @font.encoding
|
25
27
|
@font.encoding = :apple_roman
|
26
28
|
assert_equal :apple_roman, @font.encoding
|
27
|
-
@font.encoding =
|
29
|
+
@font.encoding = "Chinese Simplified"
|
28
30
|
assert_equal :chinese_simplified, @font.encoding
|
29
|
-
assert_raises ArgumentError do @font.size =
|
31
|
+
assert_raises ArgumentError do @font.size = "ascii" end # standard:disable BlockSingleLineBraces
|
30
32
|
assert_equal :chinese_simplified, @font.encoding
|
31
33
|
@font.encoding = nil
|
32
34
|
assert_equal :default, @font.encoding
|
33
35
|
end
|
36
|
+
|
34
37
|
def test_family
|
35
38
|
assert_equal :none, @font.family
|
36
39
|
@font.family = :roman
|
37
40
|
assert_equal :roman, @font.family
|
38
|
-
@font.family =
|
41
|
+
@font.family = "Swiss"
|
39
42
|
assert_equal :swiss, @font.family
|
40
|
-
assert_raises ArgumentError do @font.size = :greek end
|
43
|
+
assert_raises ArgumentError do @font.size = :greek end # standard:disable BlockSingleLineBraces
|
41
44
|
assert_equal :swiss, @font.family
|
42
45
|
@font.family = nil
|
43
46
|
assert_equal :none, @font.family
|
44
47
|
end
|
48
|
+
|
45
49
|
def test_name
|
46
|
-
assert_equal
|
47
|
-
@font.name =
|
48
|
-
assert_equal
|
50
|
+
assert_equal "Arial", @font.name
|
51
|
+
@font.name = "Helvetica"
|
52
|
+
assert_equal "Helvetica", @font.name
|
49
53
|
end
|
54
|
+
|
50
55
|
def test_outline
|
51
56
|
assert_equal false, @font.outline
|
52
57
|
@font.outline!
|
@@ -56,17 +61,19 @@ module Spreadsheet
|
|
56
61
|
@font.outline = 1
|
57
62
|
assert_equal true, @font.outline
|
58
63
|
end
|
64
|
+
|
59
65
|
def test_escapement
|
60
66
|
assert_equal :normal, @font.escapement
|
61
67
|
@font.escapement = :superscript
|
62
68
|
assert_equal :superscript, @font.escapement
|
63
|
-
@font.escapement =
|
69
|
+
@font.escapement = "sub"
|
64
70
|
assert_equal :subscript, @font.escapement
|
65
|
-
assert_raises ArgumentError do @font.size = "upwards" end
|
71
|
+
assert_raises ArgumentError do @font.size = "upwards" end # standard:disable BlockSingleLineBraces
|
66
72
|
assert_equal :subscript, @font.escapement
|
67
73
|
@font.escapement = nil
|
68
74
|
assert_equal :normal, @font.escapement
|
69
75
|
end
|
76
|
+
|
70
77
|
def test_shadow
|
71
78
|
assert_equal false, @font.shadow
|
72
79
|
@font.shadow!
|
@@ -76,14 +83,16 @@ module Spreadsheet
|
|
76
83
|
@font.shadow = 1
|
77
84
|
assert_equal true, @font.shadow
|
78
85
|
end
|
86
|
+
|
79
87
|
def test_size
|
80
88
|
assert_equal 10, @font.size
|
81
89
|
@font.size = 12
|
82
90
|
assert_equal 12, @font.size
|
83
91
|
@font.size = 11.2
|
84
92
|
assert_equal 11.2, @font.size
|
85
|
-
assert_raises ArgumentError do @font.size = "123" end
|
93
|
+
assert_raises ArgumentError do @font.size = "123" end # standard:disable BlockSingleLineBraces
|
86
94
|
end
|
95
|
+
|
87
96
|
def test_strikeout
|
88
97
|
assert_equal false, @font.strikeout
|
89
98
|
@font.strikeout!
|
@@ -93,70 +102,73 @@ module Spreadsheet
|
|
93
102
|
@font.strikeout = 1
|
94
103
|
assert_equal true, @font.strikeout
|
95
104
|
end
|
105
|
+
|
96
106
|
def test_underline
|
97
107
|
assert_equal :none, @font.underline
|
98
108
|
@font.underline = :single
|
99
109
|
assert_equal :single, @font.underline
|
100
|
-
@font.underline =
|
110
|
+
@font.underline = "double accounting"
|
101
111
|
assert_equal :double_accounting, @font.underline
|
102
|
-
assert_raises ArgumentError do @font.size = :triple end
|
112
|
+
assert_raises ArgumentError do @font.size = :triple end # standard:disable BlockSingleLineBraces
|
103
113
|
assert_equal :double_accounting, @font.underline
|
104
114
|
@font.underline = nil
|
105
115
|
assert_equal :none, @font.underline
|
106
116
|
@font.underline = true
|
107
117
|
assert_equal :single, @font.underline
|
108
118
|
end
|
119
|
+
|
109
120
|
def test_weight
|
110
121
|
assert_equal :normal, @font.weight
|
111
122
|
@font.weight = :bold
|
112
123
|
assert_equal :bold, @font.weight
|
113
124
|
@font.weight = 100
|
114
125
|
assert_equal 100, @font.weight
|
115
|
-
assert_raises ArgumentError do @font.weight = Object.new end
|
126
|
+
assert_raises ArgumentError do @font.weight = Object.new end # standard:disable BlockSingleLineBraces
|
116
127
|
assert_equal 100, @font.weight
|
117
|
-
@font.weight =
|
128
|
+
@font.weight = "bold"
|
118
129
|
assert_equal :bold, @font.weight
|
119
130
|
@font.weight = nil
|
120
131
|
assert_equal :normal, @font.weight
|
121
132
|
end
|
133
|
+
|
122
134
|
def test_key
|
123
|
-
expected =
|
135
|
+
expected = "Arial_10_normal_normal_none_text_none_default"
|
124
136
|
assert_equal expected, @font.key
|
125
|
-
@font.name =
|
126
|
-
expected =
|
137
|
+
@font.name = "Helvetica"
|
138
|
+
expected = "Helvetica_10_normal_normal_none_text_none_default"
|
127
139
|
assert_equal expected, @font.key
|
128
140
|
@font.size = 12
|
129
|
-
expected =
|
141
|
+
expected = "Helvetica_12_normal_normal_none_text_none_default"
|
130
142
|
assert_equal expected, @font.key
|
131
143
|
@font.weight = :bold
|
132
|
-
expected =
|
144
|
+
expected = "Helvetica_12_bold_normal_none_text_none_default"
|
133
145
|
assert_equal expected, @font.key
|
134
146
|
@font.italic!
|
135
|
-
expected =
|
147
|
+
expected = "Helvetica_12_bold_italic_normal_none_text_none_default"
|
136
148
|
assert_equal expected, @font.key
|
137
149
|
@font.strikeout!
|
138
|
-
expected =
|
150
|
+
expected = "Helvetica_12_bold_italic_strikeout_normal_none_text_none_default"
|
139
151
|
assert_equal expected, @font.key
|
140
152
|
@font.outline!
|
141
|
-
expected =
|
153
|
+
expected = "Helvetica_12_bold_italic_strikeout_outline_normal_none_text_none_default"
|
142
154
|
assert_equal expected, @font.key
|
143
155
|
@font.shadow!
|
144
|
-
expected =
|
156
|
+
expected = "Helvetica_12_bold_italic_strikeout_outline_shadow_normal_none_text_none_default"
|
145
157
|
assert_equal expected, @font.key
|
146
158
|
@font.escapement = :super
|
147
|
-
expected =
|
159
|
+
expected = "Helvetica_12_bold_italic_strikeout_outline_shadow_superscript_none_text_none_default"
|
148
160
|
assert_equal expected, @font.key
|
149
161
|
@font.underline = :double
|
150
|
-
expected =
|
162
|
+
expected = "Helvetica_12_bold_italic_strikeout_outline_shadow_superscript_double_text_none_default"
|
151
163
|
assert_equal expected, @font.key
|
152
164
|
@font.color = :blue
|
153
|
-
expected =
|
165
|
+
expected = "Helvetica_12_bold_italic_strikeout_outline_shadow_superscript_double_blue_none_default"
|
154
166
|
assert_equal expected, @font.key
|
155
167
|
@font.family = :swiss
|
156
|
-
expected =
|
168
|
+
expected = "Helvetica_12_bold_italic_strikeout_outline_shadow_superscript_double_blue_swiss_default"
|
157
169
|
assert_equal expected, @font.key
|
158
170
|
@font.encoding = :iso_latin1
|
159
|
-
expected =
|
171
|
+
expected = "Helvetica_12_bold_italic_strikeout_outline_shadow_superscript_double_blue_swiss_iso_latin1"
|
160
172
|
assert_equal expected, @font.key
|
161
173
|
end
|
162
174
|
end
|
data/test/format.rb
CHANGED
@@ -1,16 +1,17 @@
|
|
1
1
|
#!/usr/bin/env ruby
|
2
2
|
# TestFormat -- Spreadsheet -- 06.11.2012 -- mina.git@naguib.ca
|
3
3
|
|
4
|
-
$: << File.expand_path(
|
4
|
+
$: << File.expand_path("../lib", File.dirname(__FILE__))
|
5
5
|
|
6
|
-
require
|
7
|
-
require
|
6
|
+
require "test/unit"
|
7
|
+
require "spreadsheet"
|
8
8
|
|
9
9
|
module Spreadsheet
|
10
10
|
class TestFormat < Test::Unit::TestCase
|
11
11
|
def setup
|
12
12
|
@format = Format.new
|
13
13
|
end
|
14
|
+
|
14
15
|
def test_date?
|
15
16
|
assert_equal false, @format.date?
|
16
17
|
@format.number_format = "hms"
|
@@ -28,6 +29,7 @@ module Spreadsheet
|
|
28
29
|
@format.number_format = "[$-C0A]dd\\-mmm\\-yy"
|
29
30
|
assert_equal true, @format.date?
|
30
31
|
end
|
32
|
+
|
31
33
|
def test_date_or_time?
|
32
34
|
assert_equal false, @format.date_or_time?
|
33
35
|
@format.number_format = "hms"
|
@@ -43,6 +45,7 @@ module Spreadsheet
|
|
43
45
|
@format.number_format = "0.00;[RED]\\-0.00)"
|
44
46
|
assert_equal false, @format.date_or_time?
|
45
47
|
end
|
48
|
+
|
46
49
|
def test_datetime?
|
47
50
|
assert_equal false, @format.datetime?
|
48
51
|
@format.number_format = "H"
|
@@ -58,6 +61,7 @@ module Spreadsheet
|
|
58
61
|
@format.number_format = "0.00;[RED]\\-0.00)"
|
59
62
|
assert_equal false, @format.datetime?
|
60
63
|
end
|
64
|
+
|
61
65
|
def test_time?
|
62
66
|
assert_equal false, @format.time?
|
63
67
|
@format.number_format = "YMD"
|
@@ -77,35 +81,36 @@ module Spreadsheet
|
|
77
81
|
@format.number_format = "0.00;[RED]\\-0.00)"
|
78
82
|
assert_equal false, @format.time?
|
79
83
|
end
|
80
|
-
|
81
|
-
|
82
|
-
|
83
|
-
|
84
|
-
|
85
|
-
|
86
|
-
|
87
|
-
|
88
|
-
|
89
|
-
|
90
|
-
|
91
|
-
|
92
|
-
|
93
|
-
|
94
|
-
|
95
|
-
|
96
|
-
|
97
|
-
|
98
|
-
|
99
|
-
|
100
|
-
|
101
|
-
|
102
|
-
|
103
|
-
|
104
|
-
|
105
|
-
|
106
|
-
|
107
|
-
|
108
|
-
|
109
|
-
|
84
|
+
|
85
|
+
def test_borders?
|
86
|
+
assert_equal [:none, :none, :none, :none], @format.border
|
87
|
+
@format.border = :thick
|
88
|
+
assert_equal [:thick, :thick, :thick, :thick], @format.border
|
89
|
+
@format.left = :hair
|
90
|
+
assert_equal [:thick, :thick, :thick, :hair], @format.border
|
91
|
+
@format.right = :hair
|
92
|
+
assert_equal [:thick, :thick, :hair, :hair], @format.border
|
93
|
+
@format.top = :hair
|
94
|
+
assert_equal [:thick, :hair, :hair, :hair], @format.border
|
95
|
+
@format.bottom = :hair
|
96
|
+
assert_equal [:hair, :hair, :hair, :hair], @format.border
|
97
|
+
assert_raises(ArgumentError) do
|
98
|
+
@format.bottom = :bogus
|
99
|
+
end
|
100
|
+
assert_equal [:black, :black, :black, :black], @format.border_color
|
101
|
+
@format.border_color = :green
|
102
|
+
assert_equal [:green, :green, :green, :green], @format.border_color
|
103
|
+
@format.left_color = :red
|
104
|
+
assert_equal [:green, :green, :green, :red], @format.border_color
|
105
|
+
@format.right_color = :red
|
106
|
+
assert_equal [:green, :green, :red, :red], @format.border_color
|
107
|
+
@format.top_color = :red
|
108
|
+
assert_equal [:green, :red, :red, :red], @format.border_color
|
109
|
+
@format.bottom_color = :red
|
110
|
+
assert_equal [:red, :red, :red, :red], @format.border_color
|
111
|
+
assert_raises(ArgumentError) do
|
112
|
+
@format.bottom_color = :bogus
|
113
|
+
end
|
114
|
+
end
|
110
115
|
end
|
111
116
|
end
|