Sha256: 69d759d7153beed3641f89d9ed5c933009b29197a817d71b8f30923b1e112a57

Contents?: true

Size: 1.39 KB

Versions: 43

Compression:

Stored size: 1.39 KB

Contents

require 'test/test_helper'
require 'ostruct'

class FailureTest < ActiveSupport::TestCase

  def call_failure(env_params={})
    env = {'warden.options' => { :scope => :user }}.merge!(env_params)
    Devise::FailureApp.call(env)
  end

  test 'return 302 status' do
    assert_equal 302, call_failure.first
  end

  test 'return to the default redirect location' do
    assert_equal '/users/sign_in?unauthenticated=true', call_failure.second['Location']
  end

  test 'uses the proxy failure message' do
    warden = OpenStruct.new(:message => :test)
    location = call_failure('warden' => warden).second['Location']
    assert_equal '/users/sign_in?test=true', location
  end

  test 'uses the given message' do
    warden = OpenStruct.new(:message => 'Hello world')
    location = call_failure('warden' => warden).second['Location']
    assert_equal '/users/sign_in?message=Hello+world', location
  end

  test 'setup default url' do
    Devise::FailureApp.default_url = 'test/sign_in'
    location = call_failure('warden.options' => { :scope => nil }).second['Location']
    assert_equal '/test/sign_in?unauthenticated=true', location
  end

  test 'set content type to default text/plain' do
    assert_equal 'text/plain', call_failure.second['Content-Type']
  end

  test 'setup a default message' do
    assert_equal ['You are being redirected to /users/sign_in?unauthenticated=true'], call_failure.last
  end
end

Version data entries

43 entries across 38 versions & 7 rubygems

Version Path
graffititracker_devise-1.0.11 test/failure_app_test.rb
devise-1.0.11 test/failure_app_test.rb
devise-1.0.10 test/failure_app_test.rb
devise_ennder-1.4.1.0.9 test/rails_app/vendor/plugins/devise/test/failure_app_test.rb
devise_ennder-1.4.1.0.9 test/failure_app_test.rb
devise_ennder-1.3.1.0.9 test/failure_app_test.rb
devise_ennder-1.3.1.0.9 test/rails_app/vendor/plugins/devise/test/failure_app_test.rb
devise_ennder-1.2.1.0.9 test/rails_app/vendor/plugins/devise/test/failure_app_test.rb
devise_ennder-1.2.1.0.9 test/failure_app_test.rb
devise_ennder-1.1.1.0.9 test/rails_app/vendor/plugins/devise/test/failure_app_test.rb
devise_ennder-1.1.1.0.9 test/failure_app_test.rb
devise_ennder-1.0.1.0.9 test/failure_app_test.rb
devise_ennder-1.0.1.0.9 test/rails_app/vendor/plugins/devise/test/failure_app_test.rb
devise-1.0.9 test/failure_app_test.rb
dcu-devise-1.0.7 test/failure_app_test.rb
devise-1.0.8 test/failure_app_test.rb
ivanvc-devise-1.0.7.1 test/failure_app_test.rb
mongoid-devise-1.0.1 test/failure_app_test.rb
devise-1.0.7 test/failure_app_test.rb
devise-1.0.6 test/failure_app_test.rb