Sha256: 9709dfbcaed71d91c6d2bf370c54121a698f74dafcbbd5e491810eb2bbde204c

Contents?: true

Size: 1019 Bytes

Versions: 25

Compression:

Stored size: 1019 Bytes

Contents

require 'rails_helper'

describe ActiveAdmin::ScopeChain do

  include ActiveAdmin::ScopeChain

  describe "#scope_chain" do
    let(:relation) { double }

    context "when Scope has a scope method" do
      let(:scope) { ActiveAdmin::Scope.new :published }

      it "should call the method on the relation and return it" do
        expect(relation).to receive(:published).and_return(:scoped_relation)
        expect(scope_chain(scope, relation)).to eq :scoped_relation
      end
    end

    context "when Scope has the scope method method ':all'" do
      let(:scope) { ActiveAdmin::Scope.new :all }

      it "should return the relation" do
        expect(scope_chain(scope, relation)).to eq relation
      end
    end

    context "when Scope has a name and a scope block" do
      let(:scope) { ActiveAdmin::Scope.new("My Scope"){|s| :scoped_relation } }

      it "should instance_exec the block and return it" do
        expect(scope_chain(scope, relation)).to eq :scoped_relation
      end
    end
  end
end

Version data entries

25 entries across 25 versions & 4 rubygems

Version Path
activeadmin_addons-1.1.2 vendor/bundle/ruby/2.3.0/bundler/gems/activeadmin-a5a53c3f2b8f/spec/unit/helpers/scope_chain_spec.rb
activeadmin_addons-1.1.1 vendor/bundle/ruby/2.2.0/bundler/gems/activeadmin-a5a53c3f2b8f/spec/unit/helpers/scope_chain_spec.rb
yousty-activeadmin-1.0.17.pre spec/unit/helpers/scope_chain_spec.rb
yousty-activeadmin-1.0.16.pre spec/unit/helpers/scope_chain_spec.rb
activeadmin_addons-1.1.0 vendor/bundle/ruby/2.2.0/bundler/gems/activeadmin-a5a53c3f2b8f/spec/unit/helpers/scope_chain_spec.rb
activeadmin_addons-1.0.1 vendor/bundle/ruby/2.2.0/bundler/gems/activeadmin-a5a53c3f2b8f/spec/unit/helpers/scope_chain_spec.rb
activeadmin_addons-1.0.0 vendor/bundle/ruby/2.2.0/bundler/gems/activeadmin-a5a53c3f2b8f/spec/unit/helpers/scope_chain_spec.rb
yousty-activeadmin-1.0.15.pre spec/unit/helpers/scope_chain_spec.rb
activeadmin-orac-1.0.0.pre4 spec/unit/helpers/scope_chain_spec.rb
activeadmin-orac-1.0.0 spec/unit/helpers/scope_chain_spec.rb
activeadmin-orac-1.0.0.pre.orac spec/unit/helpers/scope_chain_spec.rb
yousty-activeadmin-1.0.14.pre spec/unit/helpers/scope_chain_spec.rb
yousty-activeadmin-1.0.13.pre spec/unit/helpers/scope_chain_spec.rb
yousty-activeadmin-1.0.12.pre spec/unit/helpers/scope_chain_spec.rb
yousty-activeadmin-1.0.11.pre spec/unit/helpers/scope_chain_spec.rb
yousty-activeadmin-1.0.10.pre spec/unit/helpers/scope_chain_spec.rb
yousty-activeadmin-1.0.9.pre spec/unit/helpers/scope_chain_spec.rb
yousty-activeadmin-1.0.8.pre spec/unit/helpers/scope_chain_spec.rb
activeadmin-1.0.0.pre4 spec/unit/helpers/scope_chain_spec.rb
activeadmin-1.0.0.pre3 spec/unit/helpers/scope_chain_spec.rb