Sha256: 69f2b49b7c227053e26daaaace81515185d9cbf9dbe01b4eb2ea40677e122888

Contents?: true

Size: 1019 Bytes

Versions: 3

Compression:

Stored size: 1019 Bytes

Contents

require 'spec_helper'

describe Datagrid::Filters::ExtendedBooleanFilter do

  it "should support select option" do
    grid = test_report do
      scope {Entry}
      filter(:disabled, :xboolean)
    end
    expect(grid.filter_by_name(:disabled).select(grid)).to eq([["Yes", "YES"], ["No", "NO"]])
  end

  it "should generate pass boolean value to filter block" do
    grid = test_report do
      scope {Entry}
      filter(:disabled, :xboolean)
    end

    disabled_entry = Entry.create!(:disabled => true)
    enabled_entry = Entry.create!(:disabled => false)

    expect(grid.disabled).to be_nil
    expect(grid.assets).to include(disabled_entry, enabled_entry)
    grid.disabled = "YES"

    expect(grid.disabled).to eq("YES")
    expect(grid.assets).to include(disabled_entry)
    expect(grid.assets).not_to include(enabled_entry)
    grid.disabled = "NO"
    expect(grid.disabled).to eq("NO")
    expect(grid.assets).to include(enabled_entry)
    expect(grid.assets).not_to include(disabled_entry)

  end

end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
datagrid-1.3.6 spec/datagrid/filters/extended_boolean_filter_spec.rb
datagrid-1.3.5 spec/datagrid/filters/extended_boolean_filter_spec.rb
datagrid-1.3.4 spec/datagrid/filters/extended_boolean_filter_spec.rb