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.
Files changed (54) hide show
  1. checksums.yaml +4 -4
  2. data/lib/parseexcel/parseexcel.rb +66 -58
  3. data/lib/parseexcel/parser.rb +1 -1
  4. data/lib/parseexcel.rb +1 -1
  5. data/lib/spreadsheet/column.rb +11 -9
  6. data/lib/spreadsheet/compatibility.rb +3 -1
  7. data/lib/spreadsheet/datatypes.rb +149 -147
  8. data/lib/spreadsheet/encodings.rb +20 -16
  9. data/lib/spreadsheet/errors.rb +2 -2
  10. data/lib/spreadsheet/excel/error.rb +23 -22
  11. data/lib/spreadsheet/excel/internals/biff5.rb +11 -11
  12. data/lib/spreadsheet/excel/internals/biff8.rb +13 -13
  13. data/lib/spreadsheet/excel/internals.rb +451 -451
  14. data/lib/spreadsheet/excel/offset.rb +32 -31
  15. data/lib/spreadsheet/excel/password_hash.rb +18 -18
  16. data/lib/spreadsheet/excel/reader/biff5.rb +34 -35
  17. data/lib/spreadsheet/excel/reader/biff8.rb +234 -222
  18. data/lib/spreadsheet/excel/reader.rb +1320 -1274
  19. data/lib/spreadsheet/excel/rgb.rb +91 -91
  20. data/lib/spreadsheet/excel/row.rb +99 -91
  21. data/lib/spreadsheet/excel/sst_entry.rb +40 -38
  22. data/lib/spreadsheet/excel/workbook.rb +86 -76
  23. data/lib/spreadsheet/excel/worksheet.rb +125 -107
  24. data/lib/spreadsheet/excel/writer/biff8.rb +56 -55
  25. data/lib/spreadsheet/excel/writer/format.rb +273 -256
  26. data/lib/spreadsheet/excel/writer/n_worksheet.rb +837 -798
  27. data/lib/spreadsheet/excel/writer/workbook.rb +671 -635
  28. data/lib/spreadsheet/excel/writer/worksheet.rb +898 -861
  29. data/lib/spreadsheet/excel/writer.rb +1 -1
  30. data/lib/spreadsheet/excel.rb +18 -11
  31. data/lib/spreadsheet/font.rb +30 -26
  32. data/lib/spreadsheet/format.rb +74 -59
  33. data/lib/spreadsheet/link.rb +7 -5
  34. data/lib/spreadsheet/note.rb +6 -6
  35. data/lib/spreadsheet/noteObject.rb +5 -5
  36. data/lib/spreadsheet/row.rb +33 -23
  37. data/lib/spreadsheet/version.rb +1 -1
  38. data/lib/spreadsheet/workbook.rb +27 -13
  39. data/lib/spreadsheet/worksheet.rb +102 -68
  40. data/lib/spreadsheet/writer.rb +3 -0
  41. data/lib/spreadsheet.rb +12 -15
  42. data/test/excel/reader.rb +8 -8
  43. data/test/excel/row.rb +35 -31
  44. data/test/excel/writer/workbook.rb +18 -16
  45. data/test/excel/writer/worksheet.rb +10 -8
  46. data/test/font.rb +44 -32
  47. data/test/format.rb +38 -33
  48. data/test/integration.rb +627 -598
  49. data/test/row.rb +5 -3
  50. data/test/suite.rb +7 -7
  51. data/test/workbook.rb +15 -14
  52. data/test/workbook_protection.rb +5 -5
  53. data/test/worksheet.rb +36 -34
  54. 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('../../../lib', File.dirname(__FILE__))
4
+ $: << File.expand_path("../../../lib", File.dirname(__FILE__))
5
5
 
6
- require 'test/unit'
7
- require 'spreadsheet'
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=-1
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+=1).default_format = f2
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=-1
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+=1).default_format = f2
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=-1
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+=1).default_format = f3
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 'test/unit'
5
- require 'spreadsheet/excel/writer/worksheet'
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 '', sheet.data
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+=1).concat(["Goodbye", "Cruel", "World", 2012])
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('../lib', File.dirname(__FILE__))
4
+ $: << File.expand_path("../lib", File.dirname(__FILE__))
5
5
 
6
- require 'test/unit'
7
- require 'spreadsheet'
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 'Arial'
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 = 'Chinese Simplified'
29
+ @font.encoding = "Chinese Simplified"
28
30
  assert_equal :chinese_simplified, @font.encoding
29
- assert_raises ArgumentError do @font.size = 'ascii' end
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 = 'Swiss'
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 'Arial', @font.name
47
- @font.name = 'Helvetica'
48
- assert_equal 'Helvetica', @font.name
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 = 'sub'
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 = 'double accounting'
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 = 'bold'
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 = 'Arial_10_normal_normal_none_text_none_default'
135
+ expected = "Arial_10_normal_normal_none_text_none_default"
124
136
  assert_equal expected, @font.key
125
- @font.name = 'Helvetica'
126
- expected = 'Helvetica_10_normal_normal_none_text_none_default'
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 = 'Helvetica_12_normal_normal_none_text_none_default'
141
+ expected = "Helvetica_12_normal_normal_none_text_none_default"
130
142
  assert_equal expected, @font.key
131
143
  @font.weight = :bold
132
- expected = 'Helvetica_12_bold_normal_none_text_none_default'
144
+ expected = "Helvetica_12_bold_normal_none_text_none_default"
133
145
  assert_equal expected, @font.key
134
146
  @font.italic!
135
- expected = 'Helvetica_12_bold_italic_normal_none_text_none_default'
147
+ expected = "Helvetica_12_bold_italic_normal_none_text_none_default"
136
148
  assert_equal expected, @font.key
137
149
  @font.strikeout!
138
- expected = 'Helvetica_12_bold_italic_strikeout_normal_none_text_none_default'
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 = 'Helvetica_12_bold_italic_strikeout_outline_normal_none_text_none_default'
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 = 'Helvetica_12_bold_italic_strikeout_outline_shadow_normal_none_text_none_default'
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 = 'Helvetica_12_bold_italic_strikeout_outline_shadow_superscript_none_text_none_default'
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 = 'Helvetica_12_bold_italic_strikeout_outline_shadow_superscript_double_text_none_default'
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 = 'Helvetica_12_bold_italic_strikeout_outline_shadow_superscript_double_blue_none_default'
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 = 'Helvetica_12_bold_italic_strikeout_outline_shadow_superscript_double_blue_swiss_default'
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 = 'Helvetica_12_bold_italic_strikeout_outline_shadow_superscript_double_blue_swiss_iso_latin1'
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('../lib', File.dirname(__FILE__))
4
+ $: << File.expand_path("../lib", File.dirname(__FILE__))
5
5
 
6
- require 'test/unit'
7
- require 'spreadsheet'
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
- def test_borders?
81
- assert_equal [:none, :none, :none, :none], @format.border
82
- @format.border = :thick
83
- assert_equal [:thick, :thick, :thick, :thick], @format.border
84
- @format.left = :hair
85
- assert_equal [:thick, :thick, :thick, :hair], @format.border
86
- @format.right = :hair
87
- assert_equal [:thick, :thick, :hair, :hair], @format.border
88
- @format.top = :hair
89
- assert_equal [:thick, :hair, :hair, :hair], @format.border
90
- @format.bottom = :hair
91
- assert_equal [:hair, :hair, :hair, :hair], @format.border
92
- assert_raises(ArgumentError) do
93
- @format.bottom = :bogus
94
- end
95
- assert_equal [:black, :black, :black, :black], @format.border_color
96
- @format.border_color = :green
97
- assert_equal [:green, :green, :green, :green], @format.border_color
98
- @format.left_color = :red
99
- assert_equal [:green, :green, :green, :red], @format.border_color
100
- @format.right_color = :red
101
- assert_equal [:green, :green, :red, :red], @format.border_color
102
- @format.top_color = :red
103
- assert_equal [:green, :red, :red, :red], @format.border_color
104
- @format.bottom_color = :red
105
- assert_equal [:red, :red, :red, :red], @format.border_color
106
- assert_raises(ArgumentError) do
107
- @format.bottom_color = :bogus
108
- end
109
- end
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