gruff 0.7.0 → 0.8.0
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 +5 -5
- data/.editorconfig +14 -0
- data/.rubocop.yml +16 -0
- data/.rubocop_todo.yml +923 -0
- data/.travis.yml +21 -14
- data/{History.txt → CHANGELOG.md} +32 -25
- data/README.md +3 -2
- data/Rakefile +27 -18
- data/assets/bubble.png +0 -0
- data/assets/city_scene/background/0000.png +0 -0
- data/assets/city_scene/background/0600.png +0 -0
- data/assets/city_scene/background/2000.png +0 -0
- data/assets/city_scene/clouds/cloudy.png +0 -0
- data/assets/city_scene/clouds/partly_cloudy.png +0 -0
- data/assets/city_scene/clouds/stormy.png +0 -0
- data/assets/city_scene/grass/default.png +0 -0
- data/assets/city_scene/haze/true.png +0 -0
- data/assets/city_scene/number_sample/1.png +0 -0
- data/assets/city_scene/number_sample/2.png +0 -0
- data/assets/city_scene/number_sample/default.png +0 -0
- data/assets/city_scene/sky/0000.png +0 -0
- data/assets/city_scene/sky/0200.png +0 -0
- data/assets/city_scene/sky/0400.png +0 -0
- data/assets/city_scene/sky/0600.png +0 -0
- data/assets/city_scene/sky/0800.png +0 -0
- data/assets/city_scene/sky/1000.png +0 -0
- data/assets/city_scene/sky/1200.png +0 -0
- data/assets/city_scene/sky/1400.png +0 -0
- data/assets/city_scene/sky/1500.png +0 -0
- data/assets/city_scene/sky/1700.png +0 -0
- data/assets/city_scene/sky/2000.png +0 -0
- data/assets/pc306715.jpg +0 -0
- data/assets/plastik/blue.png +0 -0
- data/assets/plastik/green.png +0 -0
- data/assets/plastik/red.png +0 -0
- data/gruff.gemspec +12 -10
- data/lib/gruff.rb +2 -2
- data/lib/gruff/accumulator_bar.rb +2 -2
- data/lib/gruff/area.rb +1 -4
- data/lib/gruff/bar.rb +12 -13
- data/lib/gruff/bar_conversion.rb +11 -11
- data/lib/gruff/base.rb +36 -36
- data/lib/gruff/bezier.rb +1 -2
- data/lib/gruff/bullet.rb +7 -10
- data/lib/gruff/deprecated.rb +10 -11
- data/lib/gruff/dot.rb +3 -4
- data/lib/gruff/line.rb +13 -14
- data/lib/gruff/mini/bar.rb +3 -3
- data/lib/gruff/mini/legend.rb +7 -8
- data/lib/gruff/mini/pie.rb +6 -6
- data/lib/gruff/mini/side_bar.rb +7 -7
- data/lib/gruff/net.rb +2 -8
- data/lib/gruff/photo_bar.rb +9 -12
- data/lib/gruff/pie.rb +6 -6
- data/lib/gruff/scatter.rb +47 -51
- data/lib/gruff/scene.rb +17 -19
- data/lib/gruff/side_bar.rb +5 -8
- data/lib/gruff/side_stacked_bar.rb +24 -26
- data/lib/gruff/spider.rb +14 -15
- data/lib/gruff/stacked_area.rb +12 -16
- data/lib/gruff/stacked_bar.rb +50 -52
- data/lib/gruff/stacked_mixin.rb +2 -3
- data/lib/gruff/themes.rb +32 -33
- data/lib/gruff/version.rb +1 -1
- metadata +23 -67
- data/RELEASE.md +0 -30
- data/test/gruff_test_case.rb +0 -152
- data/test/image_compare.rb +0 -58
- data/test/test_accumulator_bar.rb +0 -51
- data/test/test_area.rb +0 -134
- data/test/test_bar.rb +0 -505
- data/test/test_base.rb +0 -33
- data/test/test_bezier.rb +0 -33
- data/test/test_bullet.rb +0 -26
- data/test/test_dot.rb +0 -263
- data/test/test_labels_for_null_data.rb +0 -27
- data/test/test_legend.rb +0 -68
- data/test/test_line.rb +0 -674
- data/test/test_mini_bar.rb +0 -33
- data/test/test_mini_pie.rb +0 -25
- data/test/test_mini_side_bar.rb +0 -36
- data/test/test_net.rb +0 -231
- data/test/test_photo.rb +0 -41
- data/test/test_pie.rb +0 -194
- data/test/test_scatter.rb +0 -270
- data/test/test_scene.rb +0 -100
- data/test/test_side_bar.rb +0 -56
- data/test/test_sidestacked_bar.rb +0 -105
- data/test/test_spider.rb +0 -226
- data/test/test_stacked_area.rb +0 -52
- data/test/test_stacked_bar.rb +0 -68
data/test/test_base.rb
DELETED
@@ -1,33 +0,0 @@
|
|
1
|
-
#!/usr/bin/ruby
|
2
|
-
|
3
|
-
require File.dirname(__FILE__) + "/gruff_test_case"
|
4
|
-
|
5
|
-
class TestGruffBase < GruffTestCase
|
6
|
-
|
7
|
-
def setup
|
8
|
-
@sample_numeric_labels = {
|
9
|
-
0 => 6,
|
10
|
-
1 => 15,
|
11
|
-
2 => 24,
|
12
|
-
3 => 30,
|
13
|
-
4 => 4,
|
14
|
-
5 => 12,
|
15
|
-
6 => 21,
|
16
|
-
7 => 28,
|
17
|
-
}
|
18
|
-
end
|
19
|
-
|
20
|
-
def test_labels_can_be_any_object
|
21
|
-
g = Gruff::Bar.new
|
22
|
-
g.title = 'Bar Graph With Manual Colors'
|
23
|
-
g.legend_margin = 50
|
24
|
-
g.labels = @sample_numeric_labels
|
25
|
-
g.data(:Art, [0, 5, 8, 15], '#990000')
|
26
|
-
g.data(:Philosophy, [10, 3, 2, 8], '#009900')
|
27
|
-
g.data(:Science, [2, 15, 8, 11], '#990099')
|
28
|
-
|
29
|
-
g.minimum_value = 0
|
30
|
-
|
31
|
-
g.write('test/output/bar_object_labels.png')
|
32
|
-
end
|
33
|
-
end
|
data/test/test_bezier.rb
DELETED
@@ -1,33 +0,0 @@
|
|
1
|
-
require File.dirname(__FILE__) + "/gruff_test_case"
|
2
|
-
|
3
|
-
class TestBezier < GruffTestCase
|
4
|
-
|
5
|
-
def setup
|
6
|
-
@data_args = [75, 100, {
|
7
|
-
:target => 80,
|
8
|
-
:low => 50,
|
9
|
-
:high => 90
|
10
|
-
}]
|
11
|
-
end
|
12
|
-
|
13
|
-
def test_bezier
|
14
|
-
g = Gruff::Bezier.new
|
15
|
-
g.title = "Bezier?"
|
16
|
-
g.data 'Series 1', [0, 100]
|
17
|
-
g.write("test/output/bezier.png")
|
18
|
-
end
|
19
|
-
|
20
|
-
def test_bezier_2
|
21
|
-
g = Gruff::Bezier.new
|
22
|
-
g.data 'Series 2', [0, 127, 150]
|
23
|
-
g.write("test/output/bezier_2.png")
|
24
|
-
end
|
25
|
-
|
26
|
-
def test_bezier_3
|
27
|
-
g = Gruff::Bezier.new
|
28
|
-
g.data 'Series 3', [100,300,200,250]
|
29
|
-
g.minimum_value = 0
|
30
|
-
g.write("test/output/bezier_3.png")
|
31
|
-
end
|
32
|
-
|
33
|
-
end
|
data/test/test_bullet.rb
DELETED
@@ -1,26 +0,0 @@
|
|
1
|
-
require File.dirname(__FILE__) + "/gruff_test_case"
|
2
|
-
|
3
|
-
class TestGruffBullet < GruffTestCase
|
4
|
-
|
5
|
-
def setup
|
6
|
-
@data_args = [75, 100, {
|
7
|
-
:target => 80,
|
8
|
-
:low => 50,
|
9
|
-
:high => 90
|
10
|
-
}]
|
11
|
-
end
|
12
|
-
|
13
|
-
def test_bullet_graph
|
14
|
-
g = Gruff::Bullet.new
|
15
|
-
g.title = "Monthly Revenue"
|
16
|
-
g.data(*@data_args)
|
17
|
-
g.write("test/output/bullet_greyscale.png")
|
18
|
-
end
|
19
|
-
|
20
|
-
def test_no_options
|
21
|
-
g = Gruff::Bullet.new
|
22
|
-
g.data(*@data_args)
|
23
|
-
g.write("test/output/bullet_no_options.png")
|
24
|
-
end
|
25
|
-
|
26
|
-
end
|
data/test/test_dot.rb
DELETED
@@ -1,263 +0,0 @@
|
|
1
|
-
#!/usr/bin/ruby
|
2
|
-
|
3
|
-
require File.dirname(__FILE__) + '/gruff_test_case'
|
4
|
-
|
5
|
-
class TestGruffDot < GruffTestCase
|
6
|
-
|
7
|
-
# TODO Delete old output files once when starting tests
|
8
|
-
|
9
|
-
def setup
|
10
|
-
@datasets = [
|
11
|
-
[:Jimmy, [25, 36, 86, 39]],
|
12
|
-
[:Charles, [80, 54, 67, 54]],
|
13
|
-
[:Julie, [22, 29, 35, 38]],
|
14
|
-
#[:Jane, [95, 95, 95, 90, 85, 80, 88, 100]],
|
15
|
-
#[:Philip, [90, 34, 23, 12, 78, 89, 98, 88]],
|
16
|
-
#["Arthur", [5, 10, 13, 11, 6, 16, 22, 32]],
|
17
|
-
]
|
18
|
-
end
|
19
|
-
|
20
|
-
def test_dot_graph
|
21
|
-
g = setup_basic_graph
|
22
|
-
g.title = 'Dot Graph Test'
|
23
|
-
g.write('test/output/dot.png')
|
24
|
-
end
|
25
|
-
|
26
|
-
def test_dot_graph_set_colors
|
27
|
-
g = Gruff::Dot.new
|
28
|
-
g.title = 'Dot Graph With Manual Colors'
|
29
|
-
g.labels = {
|
30
|
-
0 => '5/6',
|
31
|
-
1 => '5/15',
|
32
|
-
2 => '5/24',
|
33
|
-
3 => '5/30',
|
34
|
-
}
|
35
|
-
g.data(:Art, [0, 5, 8, 15], '#990000')
|
36
|
-
g.data(:Philosophy, [10, 3, 2, 8], '#009900')
|
37
|
-
g.data(:Science, [2, 15, 8, 11], '#990099')
|
38
|
-
|
39
|
-
g.minimum_value = 0
|
40
|
-
|
41
|
-
g.write('test/output/dot_manual_colors.png')
|
42
|
-
end
|
43
|
-
|
44
|
-
def test_dot_graph_small
|
45
|
-
g = setup_basic_graph(400)
|
46
|
-
g.title = 'Visual Multi-Line Dot Graph Test'
|
47
|
-
g.write('test/output/dot_small.png')
|
48
|
-
end
|
49
|
-
|
50
|
-
# Somewhat worthless test. Should an error be thrown?
|
51
|
-
# def test_nil_font
|
52
|
-
# g = setup_basic_graph 400
|
53
|
-
# g.title = "Nil Font"
|
54
|
-
# g.font = nil
|
55
|
-
# g.write "test/output/dot_nil_font.png"
|
56
|
-
# end
|
57
|
-
|
58
|
-
|
59
|
-
def test_no_line_markers
|
60
|
-
g = setup_basic_graph(400)
|
61
|
-
g.title = 'No Line Markers'
|
62
|
-
g.hide_line_markers = true
|
63
|
-
g.write('test/output/dot_no_line_markers.png')
|
64
|
-
end
|
65
|
-
|
66
|
-
def test_no_legend
|
67
|
-
g = setup_basic_graph(400)
|
68
|
-
g.title = 'No Legend'
|
69
|
-
g.hide_legend = true
|
70
|
-
g.write('test/output/dot_no_legend.png')
|
71
|
-
end
|
72
|
-
|
73
|
-
def test_no_title
|
74
|
-
g = setup_basic_graph(400)
|
75
|
-
g.title = 'No Title'
|
76
|
-
g.hide_title = true
|
77
|
-
g.write('test/output/dot_no_title.png')
|
78
|
-
end
|
79
|
-
|
80
|
-
def test_no_title_or_legend
|
81
|
-
g = setup_basic_graph(400)
|
82
|
-
g.title = 'No Title or Legend'
|
83
|
-
g.hide_legend = true
|
84
|
-
g.hide_title = true
|
85
|
-
g.write('test/output/dot_no_title_or_legend.png')
|
86
|
-
end
|
87
|
-
|
88
|
-
def test_set_marker_count
|
89
|
-
g = setup_basic_graph(400)
|
90
|
-
g.title = 'Set marker'
|
91
|
-
g.marker_count = 10
|
92
|
-
g.write('test/output/dot_set_marker.png')
|
93
|
-
end
|
94
|
-
|
95
|
-
def test_set_legend_box_size
|
96
|
-
g = setup_basic_graph(400)
|
97
|
-
g.title = 'Set Small Legend Box Size'
|
98
|
-
g.legend_box_size = 10.0
|
99
|
-
g.write('test/output/dot_set_legend_box_size_sm.png')
|
100
|
-
|
101
|
-
g = setup_basic_graph(400)
|
102
|
-
g.title = 'Set Large Legend Box Size'
|
103
|
-
g.legend_box_size = 50.0
|
104
|
-
g.write('test/output/dot_set_legend_box_size_lg.png')
|
105
|
-
end
|
106
|
-
|
107
|
-
def test_x_y_labels
|
108
|
-
g = setup_basic_graph(400)
|
109
|
-
g.title = 'X Y Labels'
|
110
|
-
g.x_axis_label = 'Score (%)'
|
111
|
-
g.y_axis_label = 'Students'
|
112
|
-
g.write('test/output/dot_x_y_labels.png')
|
113
|
-
end
|
114
|
-
|
115
|
-
def test_wide_graph
|
116
|
-
g = setup_basic_graph('800x400')
|
117
|
-
g.title = 'Wide Graph'
|
118
|
-
g.write('test/output/dot_wide_graph.png')
|
119
|
-
|
120
|
-
g = setup_basic_graph('400x200')
|
121
|
-
g.title = 'Wide Graph Small'
|
122
|
-
g.write('test/output/dot_wide_graph_small.png')
|
123
|
-
end
|
124
|
-
|
125
|
-
|
126
|
-
def test_tall_graph
|
127
|
-
g = setup_basic_graph('400x600')
|
128
|
-
g.title = 'Tall Graph'
|
129
|
-
g.write('test/output/dot_tall_graph.png')
|
130
|
-
|
131
|
-
g = setup_basic_graph('200x400')
|
132
|
-
g.title = 'Tall Graph Small'
|
133
|
-
g.write('test/output/dot_tall_graph_small.png')
|
134
|
-
end
|
135
|
-
|
136
|
-
|
137
|
-
def test_one_value
|
138
|
-
g = Gruff::Dot.new
|
139
|
-
g.title = 'One Value Graph Test'
|
140
|
-
g.labels = {
|
141
|
-
0 => '1',
|
142
|
-
1 => '2'
|
143
|
-
}
|
144
|
-
g.data('one', [1,1])
|
145
|
-
|
146
|
-
g.write('test/output/dot_one_value.png')
|
147
|
-
end
|
148
|
-
|
149
|
-
|
150
|
-
def test_negative
|
151
|
-
g = Gruff::Dot.new
|
152
|
-
g.title = 'Pos/Neg Dot Graph Test'
|
153
|
-
g.labels = {
|
154
|
-
0 => '5/6',
|
155
|
-
1 => '5/15',
|
156
|
-
2 => '5/24',
|
157
|
-
3 => '5/30',
|
158
|
-
}
|
159
|
-
g.data(:apples, [-1, 0, 4, -4])
|
160
|
-
g.data(:peaches, [10, 8, 6, 3])
|
161
|
-
|
162
|
-
g.write('test/output/dot_pos_neg.png')
|
163
|
-
end
|
164
|
-
|
165
|
-
|
166
|
-
def test_nearly_zero
|
167
|
-
g = Gruff::Dot.new
|
168
|
-
g.title = 'Nearly Zero Graph'
|
169
|
-
g.labels = {
|
170
|
-
0 => '5/6',
|
171
|
-
1 => '5/15',
|
172
|
-
2 => '5/24',
|
173
|
-
3 => '5/30',
|
174
|
-
}
|
175
|
-
g.data(:apples, [1, 2, 3, 4])
|
176
|
-
g.data(:peaches, [4, 3, 2, 1])
|
177
|
-
g.minimum_value = 0
|
178
|
-
g.maximum_value = 10
|
179
|
-
g.write('test/output/dot_nearly_zero_max_10.png')
|
180
|
-
end
|
181
|
-
|
182
|
-
def test_y_axis_increment
|
183
|
-
generate_with_y_axis_increment 2.0
|
184
|
-
generate_with_y_axis_increment 1
|
185
|
-
generate_with_y_axis_increment 5
|
186
|
-
generate_with_y_axis_increment 20
|
187
|
-
end
|
188
|
-
|
189
|
-
def generate_with_y_axis_increment(increment)
|
190
|
-
g = Gruff::Dot.new
|
191
|
-
g.title = "Y Axis Set to #{increment}"
|
192
|
-
g.labels = {
|
193
|
-
0 => '5/6',
|
194
|
-
1 => '5/15',
|
195
|
-
2 => '5/24',
|
196
|
-
3 => '5/30',
|
197
|
-
}
|
198
|
-
g.y_axis_increment = increment
|
199
|
-
g.data(:apples, [1, 0.2, 0.5, 0.7])
|
200
|
-
g.data(:peaches, [2.5, 2.3, 2, 6.1])
|
201
|
-
g.write("test/output/dot_y_increment_#{increment}.png")
|
202
|
-
end
|
203
|
-
|
204
|
-
|
205
|
-
def test_custom_theme
|
206
|
-
g = Gruff::Dot.new
|
207
|
-
g.title = 'Custom Theme'
|
208
|
-
g.font = File.expand_path('CREABBRG.TTF', ENV['MAGICK_FONT_PATH'])
|
209
|
-
g.title_font_size = 60
|
210
|
-
g.legend_font_size = 32
|
211
|
-
g.marker_font_size = 32
|
212
|
-
g.theme = {
|
213
|
-
:colors => %w(#efd250 #666699 #e5573f #9595e2),
|
214
|
-
:marker_color => 'white',
|
215
|
-
:font_color => 'blue',
|
216
|
-
:background_image => 'assets/pc306715.jpg'
|
217
|
-
}
|
218
|
-
g.labels = {
|
219
|
-
0 => '5/6',
|
220
|
-
1 => '5/15',
|
221
|
-
2 => '5/24',
|
222
|
-
3 => '5/30',
|
223
|
-
}
|
224
|
-
g.data(:vancouver, [1, 2, 3, 4])
|
225
|
-
g.data(:seattle, [2, 4, 6, 8])
|
226
|
-
g.data(:portland, [3, 1, 7, 3])
|
227
|
-
g.data(:victoria, [4, 3, 5, 7])
|
228
|
-
g.minimum_value = 0
|
229
|
-
g.write('test/output/dot_themed.png')
|
230
|
-
end
|
231
|
-
|
232
|
-
def test_july_enhancements
|
233
|
-
g = Gruff::Dot.new(600)
|
234
|
-
g.hide_legend = true
|
235
|
-
g.title = 'Full speed ahead'
|
236
|
-
g.labels = (0..10).inject({}) { |memo, i| memo.merge({ i => (i*10).to_s}) }
|
237
|
-
g.data(:apples, [1.7, 0.8, 0.1, 1.9, 1.4, 0.6, 1.1, 0.7, 1.4, 0.2])
|
238
|
-
g.y_axis_increment = 1.0
|
239
|
-
g.x_axis_label = 'Score (%)'
|
240
|
-
g.y_axis_label = 'Students'
|
241
|
-
write_test_file g, 'enhancements_dot.png'
|
242
|
-
end
|
243
|
-
|
244
|
-
|
245
|
-
protected
|
246
|
-
|
247
|
-
def setup_basic_graph(size=800)
|
248
|
-
g = Gruff::Dot.new(size)
|
249
|
-
g.title = 'My Dot Graph'
|
250
|
-
g.labels = {
|
251
|
-
0 => '5/6',
|
252
|
-
1 => '5/15',
|
253
|
-
2 => '5/24',
|
254
|
-
3 => '5/30',
|
255
|
-
}
|
256
|
-
@datasets.each do |data|
|
257
|
-
g.data(data[0], data[1])
|
258
|
-
end
|
259
|
-
g
|
260
|
-
end
|
261
|
-
|
262
|
-
end
|
263
|
-
|
@@ -1,27 +0,0 @@
|
|
1
|
-
require File.dirname(__FILE__) + "/gruff_test_case"
|
2
|
-
|
3
|
-
class TestLabelsForNullData < GruffTestCase
|
4
|
-
|
5
|
-
def setup
|
6
|
-
@dataset = [nil, 1, 2, 1, nil]
|
7
|
-
|
8
|
-
@labels = {
|
9
|
-
0 => '1',
|
10
|
-
1 => '2',
|
11
|
-
2 => '3',
|
12
|
-
3 => '4',
|
13
|
-
4 => '5'
|
14
|
-
}
|
15
|
-
end
|
16
|
-
|
17
|
-
def test_labels
|
18
|
-
g = Gruff::Line.new
|
19
|
-
g.title = 'Labels For Null Data'
|
20
|
-
g.labels = @labels
|
21
|
-
g.data('data', @dataset)
|
22
|
-
g.minimum_value = 0
|
23
|
-
|
24
|
-
g.write("test/output/TestLabelsForNullData.png")
|
25
|
-
end
|
26
|
-
|
27
|
-
end
|
data/test/test_legend.rb
DELETED
@@ -1,68 +0,0 @@
|
|
1
|
-
require File.dirname(__FILE__) + '/gruff_test_case'
|
2
|
-
|
3
|
-
class TestGruffLegend < GruffTestCase
|
4
|
-
|
5
|
-
def setup
|
6
|
-
@datasets = [
|
7
|
-
[:Jimmy, [25, 36, 86, 39, 25, 31, 79, 88]],
|
8
|
-
[:Charles, [80, 54, 67, 54, 68, 70, 90, 95]],
|
9
|
-
[:Julie, [22, 29, 35, 38, 36, 40, 46, 57]],
|
10
|
-
[:Jane, [95, 95, 95, 90, 85, 80, 88, 100]],
|
11
|
-
[:Philip, [90, 34, 23, 12, 78, 89, 98, 88]],
|
12
|
-
[:Arthur, [5, 10, 13, 11, 6, 16, 22, 32]],
|
13
|
-
[:Vincent, [5, 10, 13, 11, 6, 16, 22, 32]],
|
14
|
-
[:Jake, [5, 10, 13, 11, 6, 16, 22, 32]],
|
15
|
-
[:Stephen, [5, 10, 13, 11, 6, 16, 22, 32]],
|
16
|
-
]
|
17
|
-
|
18
|
-
@sample_labels = {
|
19
|
-
0 => '5/6',
|
20
|
-
1 => '5/15',
|
21
|
-
2 => '5/24',
|
22
|
-
3 => '5/30',
|
23
|
-
4 => '6/4',
|
24
|
-
5 => '6/12',
|
25
|
-
6 => '6/21',
|
26
|
-
7 => '6/28',
|
27
|
-
}
|
28
|
-
end
|
29
|
-
|
30
|
-
def full_suite_for(name, type)
|
31
|
-
[800, 400].each do |width|
|
32
|
-
[nil, 4, 16, 30].each do |font_size|
|
33
|
-
g = type.new(width)
|
34
|
-
g.title = "Wrapped Legend Bar Test #{font_size}pts #{width}px"
|
35
|
-
g.labels = @sample_labels
|
36
|
-
0xEFD250.step(0xFF0000, 60) do |num|
|
37
|
-
g.colors << '#%x' % num
|
38
|
-
end
|
39
|
-
|
40
|
-
@datasets.each do |data|
|
41
|
-
g.data(data[0], data[1])
|
42
|
-
end
|
43
|
-
|
44
|
-
g.legend_font_size = font_size unless font_size.nil?
|
45
|
-
g.write("test/output/#{name}_wrapped_legend_#{font_size}_#{width}.png")
|
46
|
-
end
|
47
|
-
end
|
48
|
-
end
|
49
|
-
|
50
|
-
def test_bar_legend_wrap
|
51
|
-
full_suite_for(:bar, Gruff::Bar)
|
52
|
-
end
|
53
|
-
|
54
|
-
def test_pie_legend_wrap
|
55
|
-
full_suite_for(:pie, Gruff::Pie)
|
56
|
-
end
|
57
|
-
|
58
|
-
def test_more_than_two_lines_of_legends
|
59
|
-
@datasets = @datasets + [[:Julie2, [22, 29, 35, 38, 36, 40, 46, 57]],
|
60
|
-
[:Jane2, [95, 95, 95, 90, 85, 80, 88, 100]],
|
61
|
-
[:Philip2, [90, 34, 23, 12, 78, 89, 98, 88]],
|
62
|
-
[:Arthur2, [5, 10, 13, 11, 6, 16, 22, 32]],
|
63
|
-
[:Vincent2, [5, 10, 13, 11, 6, 16, 22, 32]],
|
64
|
-
[:Jake2, [5, 10, 13, 11, 6, 16, 22, 32]],
|
65
|
-
[:Stephen2, [5, 10, 13, 11, 6, 16, 22, 32]]]
|
66
|
-
full_suite_for(:bar2, Gruff::Bar)
|
67
|
-
end
|
68
|
-
end
|