Sha256: f35361bc4365f2c999e864782a0b7ec858b30d618a6e51e3c1ce88b0cd360cd0

Contents?: true

Size: 932 Bytes

Versions: 6

Compression:

Stored size: 932 Bytes

Contents

# frozen_string_literal: true

RSpec.describe Rails::Auth::ACL::Matchers::AllowAll do
  let(:matcher)     { described_class.new(enabled) }
  let(:example_env) { env_for(:get, "/") }

  describe "#initialize" do
    it "raises if given nil" do
      expect { described_class.new(nil) }.to raise_error(ArgumentError)
    end

    it "raises if given a non-boolean" do
      expect { described_class.new(42) }.to raise_error(ArgumentError)
    end
  end

  describe "#match" do
    context "enabled" do
      let(:enabled) { true }

      it "allows all requests" do
        expect(matcher.match(example_env)).to eq true
      end
    end

    context "disabled" do
      let(:enabled) { false }

      it "rejects all requests" do
        expect(matcher.match(example_env)).to eq false
      end
    end
  end

  it "knows its attributes" do
    matcher = described_class.new(true)
    expect(matcher.attributes).to eq true
  end
end

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
rails-auth-3.2.0 spec/rails/auth/acl/matchers/allow_all_spec.rb
rails-auth-3.1.0 spec/rails/auth/acl/matchers/allow_all_spec.rb
rails-auth-3.0.0 spec/rails/auth/acl/matchers/allow_all_spec.rb
rails-auth-2.2.2 spec/rails/auth/acl/matchers/allow_all_spec.rb
rails-auth-2.2.1 spec/rails/auth/acl/matchers/allow_all_spec.rb
rails-auth-2.2.0 spec/rails/auth/acl/matchers/allow_all_spec.rb