annotate .svn/pristine/0d/0dec78f36b0f6507c2aa4e50dcd86ca0850c844a.svn-base @ 1519:afce8026aaeb redmine-2.4-integration

Merge from branch "live"
author Chris Cannam
date Tue, 09 Sep 2014 09:34:53 +0100
parents cbb26bc654de
children
rev   line source
Chris@909 1 require File.dirname(__FILE__) + '/test_helper'
Chris@909 2
Chris@909 3 class OpenIdAuthenticationTest < Test::Unit::TestCase
Chris@909 4 def setup
Chris@909 5 @controller = Class.new do
Chris@909 6 include OpenIdAuthentication
Chris@909 7 def params() {} end
Chris@909 8 end.new
Chris@909 9 end
Chris@909 10
Chris@909 11 def test_authentication_should_fail_when_the_identity_server_is_missing
Chris@909 12 open_id_consumer = mock()
Chris@909 13 open_id_consumer.expects(:begin).raises(OpenID::OpenIDError)
Chris@909 14 @controller.expects(:open_id_consumer).returns(open_id_consumer)
Chris@909 15 @controller.expects(:logger).returns(mock(:error => true))
Chris@909 16
Chris@909 17 @controller.send(:authenticate_with_open_id, "http://someone.example.com") do |result, identity_url|
Chris@909 18 assert result.missing?
Chris@909 19 assert_equal "Sorry, the OpenID server couldn't be found", result.message
Chris@909 20 end
Chris@909 21 end
Chris@909 22
Chris@909 23 def test_authentication_should_be_invalid_when_the_identity_url_is_invalid
Chris@909 24 @controller.send(:authenticate_with_open_id, "!") do |result, identity_url|
Chris@909 25 assert result.invalid?, "Result expected to be invalid but was not"
Chris@909 26 assert_equal "Sorry, but this does not appear to be a valid OpenID", result.message
Chris@909 27 end
Chris@909 28 end
Chris@909 29
Chris@909 30 def test_authentication_should_fail_when_the_identity_server_times_out
Chris@909 31 open_id_consumer = mock()
Chris@909 32 open_id_consumer.expects(:begin).raises(Timeout::Error, "Identity Server took too long.")
Chris@909 33 @controller.expects(:open_id_consumer).returns(open_id_consumer)
Chris@909 34 @controller.expects(:logger).returns(mock(:error => true))
Chris@909 35
Chris@909 36 @controller.send(:authenticate_with_open_id, "http://someone.example.com") do |result, identity_url|
Chris@909 37 assert result.missing?
Chris@909 38 assert_equal "Sorry, the OpenID server couldn't be found", result.message
Chris@909 39 end
Chris@909 40 end
Chris@909 41
Chris@909 42 def test_authentication_should_begin_when_the_identity_server_is_present
Chris@909 43 @controller.expects(:begin_open_id_authentication)
Chris@909 44 @controller.send(:authenticate_with_open_id, "http://someone.example.com")
Chris@909 45 end
Chris@909 46 end