Sha256: 3058dbc94a87bb432abd8aaf0df3dd500d61d397b3ba4ca16015a502f5e29502
Contents?: true
Size: 1.78 KB
Versions: 31
Compression:
Stored size: 1.78 KB
Contents
require "datagrid" #TODO: refactor this experimental shit shared_examples_for "Datagrid" do describe "as Datagrid" do it "should have at least one entry if assets" do subject.assets.should_not be_empty end its(:data) {should_not be_empty} described_class.columns(:data => true).each do |column| describe "column ##{column.name}" do it "should has value in #data_hash" do subject.data_hash.first.should have_key(column.name) end it "should support order" do subject.order = column.name subject.assets.first.should_not be_nil end it "should support descending order" do subject.descending = true subject.assets.first.should_not be_nil end end end described_class.filters.each do |filter| describe "filter ##{filter.name}" do let(:filter_value) do case Datagrid::Filters::FILTER_TYPES.invert[filter.class] when :default, :string "text" when :date 1.day.ago when :eboolean Datagrid::Filters::BooleanEnumFilter::YES when :boolean true when :integer 1 when :enum select = filter.select select = select.call(subject) if select.respond_to?(:call) select.first.try(:last) else raise "unknown filter type: #{filter.class}" end.to_s end before(:each) do subject.attributes = {filter.name => filter_value} subject.send(filter.name).should_not be_nil end it "should be supported" do subject.assets.should_not be_nil #TODO: better matcher. end end end end end
Version data entries
31 entries across 31 versions & 1 rubygems