1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 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 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161
|
#!/usr/bin/ruby
require File.dirname(__FILE__) + "/gruff_test_case"
class TestGruffPie < GruffTestCase
def setup
@datasets = [
[:Darren, [25]],
[:Chris, [80]],
[:Egbert, [22]],
[:Adam, [95]],
[:Bill, [90]],
["Frank", [5]],
["Zero", [0]],
]
end
def test_pie_graph
g = Gruff::Pie.new
g.title = "Visual Pie Graph Test"
@datasets.each do |data|
g.data(data[0], data[1])
end
# Default theme
g.write("test/output/pie_keynote.png")
end
def test_pie_graph_greyscale
g = Gruff::Pie.new
g.title = "Greyscale Pie Graph Test"
g.theme = Gruff::Themes::GREYSCALE
@datasets.each do |data|
g.data(data[0], data[1])
end
# Default theme
g.write("test/output/pie_grey.png")
end
def test_pie_graph_pastel
g = Gruff::Pie.new
g.theme = Gruff::Themes::PASTEL
g.title = "Pastel Pie Graph Test"
@datasets.each do |data|
g.data(data[0], data[1])
end
# Default theme
g.write("test/output/pie_pastel.png")
end
def test_pie_graph_small
g = Gruff::Pie.new(400)
g.title = "Visual Pie Graph Test Small"
@datasets.each do |data|
g.data(data[0], data[1])
end
# Default theme
g.write("test/output/pie_keynote_small.png")
end
def test_pie_graph_nearly_equal
g = Gruff::Pie.new
g.title = "Pie Graph Nearly Equal"
g.data(:Blake, [41])
g.data(:Aaron, [42])
# g.data(:Grouch, [40])
# g.data(:Snuffleupagus, [43])
g.write("test/output/pie_nearly_equal.png")
end
def test_pie_graph_equal
g = Gruff::Pie.new
g.title = "Pie Graph Equal"
g.data(:Bert, [41])
g.data(:Adam, [41])
g.write("test/output/pie_equal.png")
end
def test_pie_graph_zero
g = Gruff::Pie.new
g.title = "Pie Graph One Zero"
g.data(:Bert, [0])
g.data(:Adam, [1])
g.write("test/output/pie_zero.png")
end
def test_pie_graph_one_val
g = Gruff::Pie.new
g.title = "Pie Graph One Val"
g.data(:Bert, 53)
g.data(:Adam, 29)
g.write("test/output/pie_one_val.png")
end
def test_wide
g = setup_basic_graph('800x400')
g.title = "Wide Pie"
g.write("test/output/pie_wide.png")
end
def test_label_size
g = setup_basic_graph()
g.title = "Pie With Small Legend"
g.legend_font_size = 10
g.write("test/output/pie_legend.png")
g = setup_basic_graph(400)
g.title = "Small Pie With Small Legend"
g.legend_font_size = 10
g.write("test/output/pie_legend_small.png")
end
def test_tiny_simple_pie
@datasets = (1..5).map {|n| ['Auto', [rand(100)]]}
g = setup_basic_graph 200
g.hide_legend = true
g.hide_title = true
g.hide_line_numbers = true
g.marker_font_size = 40.0
g.minimum_value = 0.0
write_test_file g, "pie_simple.png"
end
def test_pie_with_adjusted_text_offset_percentage
g = setup_basic_graph
g.title = "Adjusted Text Offset Percentage"
g.text_offset_percentage = 0.03
g.write "test/output/pie_adjusted_text_offset_percentage.png"
end
protected
def setup_basic_graph(size=800)
g = Gruff::Pie.new(size)
g.title = "My Graph Title"
@datasets.each do |data|
g.data(data[0], data[1])
end
return g
end
end
|