Sha256: 4d8d14f368272cf6654719e2f7c2760d780cd69f4d4df55d61e30b3755b253bc
Contents?: true
Size: 1.04 KB
Versions: 8
Compression:
Stored size: 1.04 KB
Contents
RSpec.describe Rails::Auth::ACL do let(:example_config) { fixture_path("example_acl.yml").read } let(:example_acl) do described_class.from_yaml( example_config, matchers: { allow_x509_subject: Rails::Auth::X509::Matcher, allow_claims: ClaimsMatcher } ) end describe "#initialize" do it "raises TypeError if given a non-Array ACL type" do expect { described_class.new(:bogus) }.to raise_error(TypeError) end end describe "#match" do it "matches routes against the ACL" do expect(example_acl.match(env_for(:get, "/"))).to eq "allow_all" expect(example_acl.match(env_for(:get, "/foo/bar/baz"))).to eq "allow_claims" expect(example_acl.match(env_for(:get, "/_admin"))).to eq nil end end describe "#matching_resources" do it "finds Rails::Auth::ACL::Resource objects that match the request" do resources = example_acl.matching_resources(env_for(:get, "/foo/bar/baz")) expect(resources.first.path).to eq %r{\A/foo/bar/.*\z} end end end
Version data entries
8 entries across 8 versions & 1 rubygems