Specs and fixes for ReportTagHelper#grafico_report_tag - reportable - Fork of reportable required by WarVox, from hdm/reportable.
 (DIR) Log
 (DIR) Files
 (DIR) Refs
 (DIR) README
       ---
 (DIR) commit e4f1ef62eaa8132c5e61a4b6cfa463f24e990691
 (DIR) parent 5ef77ac9f838a14326d882124c57fca5886be26b
 (HTM) Author: Martin Kavalar <martin@sauspiel.de>
       Date:   Wed, 21 Apr 2010 16:37:53 +0200
       
       Specs and fixes for ReportTagHelper#grafico_report_tag
       
       Diffstat:
         M lib/saulabs/reportable/config.rb    |       4 ++--
         M lib/saulabs/reportable/report_tag_… |       4 ++--
         M spec/other/report_tag_helper_spec.… |      24 ++++++++++++++++++++++++
       
       3 files changed, 28 insertions(+), 4 deletions(-)
       ---
 (DIR) diff --git a/lib/saulabs/reportable/config.rb b/lib/saulabs/reportable/config.rb
       @@ -16,11 +16,11 @@ module Saulabs
        
              mattr_accessor :grafico_options
        
       -      @@grafico_basic_options = {
       +      @@grafico_options = {
                :width                  => 300,
                :height                 => 100,
                :dom_id                 => nil,
       -        :format                 => 'div(100).to_i',
       +        :format                 => 'to_i',
                :area_opacity           => 0.3,
                :markers                => 'value',
                :grid                   => false,
 (DIR) diff --git a/lib/saulabs/reportable/report_tag_helper.rb b/lib/saulabs/reportable/report_tag_helper.rb
       @@ -83,9 +83,9 @@ module Saulabs
              #   <%= report_tag(User.registrations_report, {:width => 200, :height => 100, :format => "div(100).to_i"}, {:vertical_label_unit => "registrations"}) %>
              #
              def grafico_report_tag(data, options = {}, grafico_options = {})
       -        options.reverse_merge!(Config.grafico_options.slice(:width, :height))
       +        options.reverse_merge!(Config.grafico_options.slice(:width, :height, :format))
                options.reverse_merge!(:dom_id => "#{data.model_name.downcase}_#{data.report_name}")
       -        grafico_options.reverse_merge!(Config.grafico_options.except(:width, :height))
       +        grafico_options.reverse_merge!(Config.grafico_options.except(:width, :height, :format))
                %Q{<div id="#{options[:dom_id] || "reportable_#{Time.now}"}" style="width: #{options[:width]}px; height: #{options[:height]}px;"></div>
                <script type="text/javascript" charset="utf-8">
                  new Grafico.AreaGraph(
 (DIR) diff --git a/spec/other/report_tag_helper_spec.rb b/spec/other/report_tag_helper_spec.rb
       @@ -5,6 +5,30 @@ describe Saulabs::Reportable::ReportTagHelper do
          before do
            @helper = TestHelper.new
          end
       +  
       +  describe '#grafico_report_tag' do
       +    
       +    data_set = Saulabs::Reportable::ResultSet.new([[DateTime.now, 1.0], [DateTime.now - 1.day, 3.0]], "User", "registrations")
       +    
       +    it 'should not raise an error' do
       +      lambda {
       +        @helper.grafico_report_tag(data_set)
       +      }.should_not raise_error
       +    end
       +    
       +    it 'should return a string' do
       +      @helper.grafico_report_tag(data_set).class.should == String
       +    end
       +    
       +    it 'should contain div tag' do
       +      @helper.grafico_report_tag(data_set).should =~ /^<div id=".*">.*<\/div>/
       +    end
       +    
       +    it 'should contain script tag' do
       +      @helper.grafico_report_tag(data_set).should =~ /<script type="text\/javascript" charset="utf-8">.*<\/script>/m
       +    end
       +    
       +  end
        
          describe '#google_report_tag' do