Sha256: 753ef4a49c1ce0d0b7d8f5faaa2d454df3a4a7523cf4d92ac406a780492db860

Contents?: true

Size: 1.35 KB

Versions: 3

Compression:

Stored size: 1.35 KB

Contents

require 'spec_helper'
require "datagrid/rspec"


describe Datagrid do
  
  #it_should_behave_like 'Datagrid'
  
  let(:group) { Group.create!(:name => "Pop") }
  
  subject do
    SimpleReport.new(
      :group_id => group.id,
      :name => "Star",
      :category => "first",
      :disabled => false,
      :confirmed => false
    )
  end

  let!(:entry) {  Entry.create!(
    :group => group, :name => "Star", :disabled => false, :confirmed => false, :category => "first"
  ) }

  its(:assets) { should include(entry) }

  describe ".attributes" do
    it "should return report attributes" do
      (subject.filters.map(&:name) + [:order, :reverse]).each do |attribute|
        subject.attributes.should have_key(attribute)
      end
    end

  end

  describe ".scope" do
    it "should return defined scope of objects" do
      subject.scope.should respond_to(:table_name)
    end
      

    context "when not defined on class level" do
      before(:each) do
        @scope = SimpleReport.instance_variable_get("@scope")
        SimpleReport.instance_variable_set("@scope", nil)
      end

      after(:each) do
        SimpleReport.instance_variable_set("@scope", @scope)
      end

      it "should raise ConfigurationError" do
        lambda {
          subject.scope
        }.should raise_error(Datagrid::ConfigurationError)
        
      end
    end
  end



end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
datagrid-0.1.2 spec/datagrid_spec.rb
datagrid-0.1.1 spec/datagrid_spec.rb
datagrid-0.1.0 spec/datagrid_spec.rb