Sha256: d0f724742bbbd9026329a5df7890a46cfd7c51f8ad1ca1c8334827a50f5c53fc
Contents?: true
Size: 1 KB
Versions: 2
Compression:
Stored size: 1 KB
Contents
require 'spec_helper' require 'apartment/elevators/subdomain' describe Apartment::Elevators::Subdomain do subject(:elevator){ described_class.new(Proc.new{}) } describe "#parse_tenant_name" do it "should parse subdomain" do request = ActionDispatch::Request.new('HTTP_HOST' => 'foo.bar.com') elevator.parse_tenant_name(request).should == 'foo' end it "should return nil when no subdomain" do request = ActionDispatch::Request.new('HTTP_HOST' => 'bar.com') elevator.parse_tenant_name(request).should be_nil end end describe "#call" do it "switches to the proper tenant" do Apartment::Database.should_receive(:switch).with('tenant1') elevator.call('HTTP_HOST' => 'tenant1.example.com') end it "ignores excluded subdomains" do described_class.excluded_subdomains = %w{foo} Apartment::Database.should_not_receive(:switch) elevator.call('HTTP_HOST' => 'foo.bar.com') described_class.excluded_subdomains = nil end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
apartment-0.23.2 | spec/unit/elevators/subdomain_spec.rb |
apartment-0.23.1 | spec/unit/elevators/subdomain_spec.rb |