Sha256: 5aaa4758197b22bd319a3790a399ae151bb2eff77f8459c3672416b00da89816
Contents?: true
Size: 1.9 KB
Versions: 1
Compression:
Stored size: 1.9 KB
Contents
$:.unshift(File.dirname(__FILE__)+'/../lib/') require 'statsample' require 'tmpdir' require 'tempfile' require 'tempfile' require 'fileutils' require 'test/unit' begin require 'statsample/graph/svggraph' class StatsampleSvgGraphTestCase < Test::Unit::TestCase def initialize(*args) @image_path=Dir::tmpdir+"/images" FileUtils.mkdir(@image_path) if !File.exists? @image_path super end def test_histogram if Statsample.has_gsl? ar=(1..1000).to_a.collect {|a| rand(10) }.to_vector(:scale) h=ar.histogram([0,2,5,11]) file=Tempfile.new("svg_histogram_only.svg") graph = Statsample::Graph::SvgHistogram.new({}) graph.histogram=h file.puts(graph.burn) else puts "Statsample::Graph::SvgHistogram.new not tested (no ruby-gsl)" end end def assert_svg(msg=nil) msg||="%s isn't a svg file" Tempfile.open("svg") do |fp| yield fp fp.close fp.open assert_match(/DOCTYPE svg/, fp.gets(nil), sprintf(msg,fp.path)) end end def test_vector ar=[] (1..1000).each {|a| ar.push(rand(10)) } vector=ar.to_vector assert_svg {|file| vector.svggraph_frequencies(file)} assert_svg {|file| vector.svggraph_frequencies(file, 800, 600, SVG::Graph::Bar, :graph_title=>'Bar') } assert_svg {|file| vector.svggraph_frequencies(file, 800, 600, SVG::Graph::BarHorizontalNoOp, :graph_title=>'Horizontal Bar') } assert_svg {|file| vector.svggraph_frequencies(file,800,600, SVG::Graph::PieNoOp, :graph_title=>'Pie') } vector.type=:scale if Statsample.has_gsl? file=Tempfile.new("svg_histogram.svg").path hist=vector.svggraph_histogram(5) File.open(file,"wb") {|fp| fp.write(hist.burn) } assert(File.exists?(file)) else puts "Statsample::Vector#svggraph_histogram.new not tested (no ruby-gsl)" end end end rescue LoadError puts "You should install SVG::Graph" end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
statsample-0.7.0 | test/test_svg_graph.rb |