Add tests for SAML metadata controller

pull/11202/head
Javier Torres 8 years ago
parent 8d3e78c27e
commit 2cff617e3c

@ -265,6 +265,7 @@ SPEC_HELPER_MIN_SPECS = \
spec/requests/carto/superadmin/users_controller_spec.rb \
spec/requests/carto/superadmin/user_migration_imports_spec.rb \
spec/requests/carto/superadmin/user_migration_exports_spec.rb \
spec/requests/carto/saml_controller_spec.rb \
spec/requests/admin/users_controller_spec.rb \
spec/services/carto/user_table_index_service_spec.rb \
spec/lib/carto/strong_password_validator_spec.rb \

@ -4,8 +4,12 @@ require_dependency 'carto/controller_helper'
module Carto
class SamlController < ApplicationController
include Carto::ControllerHelper
ssl_required :metadata
before_filter :load_organization
before_filter :load_organization, :ensure_saml_enabled
rescue_from LoadError, UnauthorizedError, with: :rescue_from_carto_error
# Callback from Github Oauth
def metadata

@ -0,0 +1,27 @@
require 'spec_helper_min'
describe Carto::SamlController do
before(:all) do
@organization = FactoryGirl.create(:saml_organization)
end
after(:all) do
@organization.destroy
end
it 'shows SAML metadata' do
get saml_metadata_url(user_domain: @organization.name)
response.status.should eq 200
end
it 'returns an error for non-existing organizations' do
get saml_metadata_url(user_domain: 'wadus')
response.status.should eq 404
end
it 'returns an error for non-configured organizations' do
Carto::Organization.any_instance.stubs(:auth_saml_enabled?).returns(false)
get saml_metadata_url(user_domain: @organization.name)
response.status.should eq 403
end
end
Loading…
Cancel
Save