diff --git a/Rakefile b/Rakefile index acb17fa..9fb51ac 100644 --- a/Rakefile +++ b/Rakefile @@ -50,7 +50,7 @@ Spec::Rake::SpecTask.new('spec') do |t| end RCov::VerifyTask.new(:verify_coverage => :specs_with_rcov) do |t| - t.threshold = 97.0 + t.threshold = 97.03 t.index_html = 'coverage/index.html' end diff --git a/castronaut.rb b/castronaut.rb index b13e481..80b9048 100644 --- a/castronaut.rb +++ b/castronaut.rb @@ -1,6 +1,6 @@ require 'rubygems' -gem :activerecord, '>= 2.1.0' -gem :activesupport, '>= 2.1.0' +gem 'activerecord', '>= 2.1.0' +gem 'activesupport', '>= 2.1.0' require 'active_support' require 'activerecord' diff --git a/spec/castronaut/adapters/development/user_spec.rb b/spec/castronaut/adapters/development/user_spec.rb index b3975af..b413296 100644 --- a/spec/castronaut/adapters/development/user_spec.rb +++ b/spec/castronaut/adapters/development/user_spec.rb @@ -42,7 +42,7 @@ describe "when the credentials are invalid" do it "returns a Castronaut::AuthenticationResult object with the unable to authenticate user message" do - Castronaut::Adapters::Development::User.stub!(:find_by_login).and_return(stub_everything(:crypted_password => "a", :salt => "b")) + Castronaut::Adapters::Development::User.stub!(:find_by_login).and_return(stub(:crypted_password => "a", :salt => "b").as_null_object) Castronaut::Adapters::Development::User.authenticate('bob', '1234').error_message.should == "Unable to authenticate the username bob" end diff --git a/spec/castronaut/adapters/ldap/user_spec.rb b/spec/castronaut/adapters/ldap/user_spec.rb index b02a0d7..ad70bd3 100644 --- a/spec/castronaut/adapters/ldap/user_spec.rb +++ b/spec/castronaut/adapters/ldap/user_spec.rb @@ -5,14 +5,14 @@ describe "authenticate" do it "attempts to authenticate the user" do - connection = stub_everything + connection = stub({}).as_null_object Net::LDAP.stub!(:new).and_return(connection) connection.should_receive(:authenticate).with('cn=bob, dc=example, dc=com, ', '1234').and_return(nil) Castronaut::Adapters::Ldap::User.authenticate('cn=bob, dc=example, dc=com', '1234') end it "returns a failed to authenticate message when authentication fails" do - connection = stub_everything + connection = stub({}).as_null_object Net::LDAP.stub!(:new).and_return(connection) connection.stub!(:authenticate).and_return(nil) connection.stub!(:bind).and_return(false) diff --git a/spec/castronaut/adapters/restful_authentication/user_spec.rb b/spec/castronaut/adapters/restful_authentication/user_spec.rb index c8d49d7..f3bf8cb 100644 --- a/spec/castronaut/adapters/restful_authentication/user_spec.rb +++ b/spec/castronaut/adapters/restful_authentication/user_spec.rb @@ -85,7 +85,7 @@ describe "when the credentials are invalid" do it "returns a Castronaut::AuthenticationResult object with the unable to authenticate user message" do - Castronaut::Adapters::RestfulAuthentication::User.stub!(:find_by_login).and_return(stub_everything(:crypted_password => "a", :salt => "b")) + Castronaut::Adapters::RestfulAuthentication::User.stub!(:find_by_login).and_return(stub(:crypted_password => "a", :salt => "b").as_null_object) Castronaut::Adapters::RestfulAuthentication::User.authenticate('bob', '1234').error_message.should == "Unable to authenticate the username bob" end diff --git a/spec/castronaut/configuration_spec.rb b/spec/castronaut/configuration_spec.rb index c56bb4b..10b2275 100644 --- a/spec/castronaut/configuration_spec.rb +++ b/spec/castronaut/configuration_spec.rb @@ -15,7 +15,7 @@ config = Castronaut::Configuration.new config.stub!(:parse_config_into_settings) config.stub!(:connect_activerecord) - config.stub!(:setup_logger).and_return(stub_everything) + config.stub!(:setup_logger).and_return(stub({}).as_null_object) Castronaut::Configuration.stub!(:new).and_return(config) Castronaut::Configuration.load.config_file_path.should == './castronaut.yml' @@ -27,7 +27,7 @@ config = Castronaut::Configuration.new config.stub!(:parse_config_into_settings) config.stub!(:connect_activerecord) - config.stub!(:setup_logger).and_return(stub_everything) + config.stub!(:setup_logger).and_return(stub({}).as_null_object) Castronaut::Configuration.stub!(:new).and_return(config) Castronaut::Configuration.load("/foo/bar/baz").config_file_path.should == '/foo/bar/baz' @@ -39,7 +39,7 @@ config = Castronaut::Configuration.new config.stub!(:parse_config_into_settings) config.stub!(:connect_activerecord) - config.stub!(:setup_logger).and_return(stub_everything) + config.stub!(:setup_logger).and_return(stub({}).as_null_object) Castronaut::Configuration.stub!(:new).and_return(config) Castronaut::Configuration.load(@test_config_file) @@ -52,7 +52,7 @@ config = Castronaut::Configuration.new config.stub!(:parse_config_into_settings) config.stub!(:connect_activerecord) - config.stub!(:setup_logger).and_return(stub_everything) + config.stub!(:setup_logger).and_return(stub({}).as_null_object) Castronaut::Configuration.stub!(:new).and_return(config) Castronaut::Configuration.load(@test_config_file).config_hash = config_hash @@ -72,7 +72,7 @@ config = Castronaut::Configuration.new config.stub!(:connect_activerecord) Castronaut::Configuration.stub!(:new).and_return(config) - Hodel3000CompliantLogger.should_receive(:new).with("log/castronaut.log", anything).and_return(stub_everything) + Hodel3000CompliantLogger.should_receive(:new).with("log/castronaut.log", anything).and_return(stub({}).as_null_object) Castronaut::Configuration.load(@test_config_file) end @@ -90,7 +90,7 @@ config.stub!(:connect_activerecord) Castronaut::Configuration.stub!(:new).and_return(config) - Hodel3000CompliantLogger.should_receive(:new).with("log/castronaut.log", "daily").and_return(stub_everything) + Hodel3000CompliantLogger.should_receive(:new).with("log/castronaut.log", "daily").and_return(stub({}).as_null_object) Castronaut::Configuration.load(@test_config_file) end diff --git a/spec/castronaut/models/login_ticket_spec.rb b/spec/castronaut/models/login_ticket_spec.rb index 0ea3426..5d15ad0 100644 --- a/spec/castronaut/models/login_ticket_spec.rb +++ b/spec/castronaut/models/login_ticket_spec.rb @@ -70,7 +70,7 @@ describe "and it has already been consumed" do it "returns a ticket result with the AlreadyConsumedMessage" do - login_ticket = stub_everything(:consumed? => true) + login_ticket = stub(:consumed? => true).as_null_object Castronaut::TicketResult.should_receive(:new).with(login_ticket, LoginTicket::AlreadyConsumedMessage) LoginTicket.stub!(:find_by_ticket).and_return(login_ticket) diff --git a/spec/castronaut/models/proxy_granting_ticket_spec.rb b/spec/castronaut/models/proxy_granting_ticket_spec.rb index 9626bb6..422707b 100644 --- a/spec/castronaut/models/proxy_granting_ticket_spec.rb +++ b/spec/castronaut/models/proxy_granting_ticket_spec.rb @@ -69,7 +69,7 @@ describe "when proxy granting ticket url is valid" do it "creates a new net/http connection to uri host and port" do - https = stub_everything + https = stub({}).as_null_object Net::HTTP.stub!(:new).and_return(https) uri = stub('uri', :host => 'example.com', :port => 443, :path => '') @@ -80,10 +80,10 @@ end it "sets the new net/http connection to use ssl" do - https = stub_everything + https = stub({}).as_null_object Net::HTTP.stub!(:new).and_return(https) - uri = stub_everything(:host => 'example.com', :port => 443, :path => '') + uri = stub(:host => 'example.com', :port => 443, :path => '').as_null_object URI.stub!(:parse).and_return(uri) https.should_receive(:use_ssl=).with(true) @@ -94,10 +94,10 @@ end it "starts the connection" do - https = stub_everything + https = stub({}).as_null_object Net::HTTP.stub!(:new).and_return(https) - uri = stub_everything(:host => 'example.com', :port => 443, :path => '') + uri = stub(:host => 'example.com', :port => 443, :path => '').as_null_object URI.stub!(:parse).and_return(uri) https.should_receive(:start) @@ -108,28 +108,28 @@ describe "inside the http connection block" do it "intializes a new proxy granting ticket" do - https = stub_everything + https = stub({}).as_null_object Net::HTTP.stub!(:new).and_return(https) - uri = stub_everything(:host => 'example.com', :port => 443, :path => '') + uri = stub(:host => 'example.com', :port => 443, :path => '').as_null_object URI.stub!(:parse).and_return(uri) - https.stub!(:start).and_yield(stub_everything(:request_get => stub_everything)) + https.stub!(:start).and_yield(stub(:request_get => stub({}).as_null_object).as_null_object) - ProxyGrantingTicket.should_receive(:new).with(:service_ticket => 'service ticket', :client_hostname => '10.1.1.1').and_return(stub_everything) + ProxyGrantingTicket.should_receive(:new).with(:service_ticket => 'service ticket', :client_hostname => '10.1.1.1').and_return(stub({}).as_null_object) ProxyGrantingTicket.generate_ticket('http://example.com', '10.1.1.1', 'service ticket') end it "dispenses a new ticket for the proxy granting ticket" do - https = stub_everything + https = stub({}).as_null_object Net::HTTP.stub!(:new).and_return(https) - uri = stub_everything(:host => 'example.com', :port => 443, :path => '') + uri = stub(:host => 'example.com', :port => 443, :path => '').as_null_object URI.stub!(:parse).and_return(uri) - https.stub!(:start).and_yield(stub_everything(:request_get => stub_everything)) + https.stub!(:start).and_yield(stub(:request_get => stub({}).as_null_object).as_null_object) - proxy_granting_ticket = stub_everything + proxy_granting_ticket = stub({}).as_null_object proxy_granting_ticket.should_receive(:dispense_ticket) ProxyGrantingTicket.stub!(:new).and_return(proxy_granting_ticket) @@ -137,15 +137,15 @@ end it "dispenses a new iou for the proxy granting ticket" do - https = stub_everything + https = stub({}).as_null_object Net::HTTP.stub!(:new).and_return(https) - uri = stub_everything(:host => 'example.com', :port => 443, :path => '') + uri = stub(:host => 'example.com', :port => 443, :path => '').as_null_object URI.stub!(:parse).and_return(uri) - https.stub!(:start).and_yield(stub_everything(:request_get => stub_everything)) + https.stub!(:start).and_yield(stub(:request_get => stub({}).as_null_object).as_null_object) - proxy_granting_ticket = stub_everything + proxy_granting_ticket = stub({}).as_null_object proxy_granting_ticket.should_receive(:dispense_iou) ProxyGrantingTicket.stub!(:new).and_return(proxy_granting_ticket) @@ -153,13 +153,13 @@ end it "requests the proxy granting ticket path via GET" do - https = stub_everything + https = stub({}).as_null_object Net::HTTP.stub!(:new).and_return(https) - uri = stub_everything(:host => 'example.com', :port => 443, :path => '') + uri = stub(:host => 'example.com', :port => 443, :path => '').as_null_object URI.stub!(:parse).and_return(uri) http_connection = mock('httpconnection') - http_connection.should_receive(:request_get).with('/?pgtId=PGT-RANDOM&pgtIou=PGTIOU-RANDOM').and_return(stub_everything) + http_connection.should_receive(:request_get).with('/?pgtId=PGT-RANDOM&pgtIou=PGTIOU-RANDOM').and_return(stub({}).as_null_object) https.stub!(:start).and_yield(http_connection) @@ -171,7 +171,7 @@ describe "when the request to the proxy granting ticket path is successful" do it "saves the proxy granting ticket" do - https = stub_everything + https = stub({}).as_null_object Net::HTTP.stub!(:new).and_return(https) uri = stub('uri', :host => 'example.com', :port => 443, :path => '', :query => '') @@ -191,7 +191,7 @@ describe "returns a ticket result" do it "with the proxy granting ticket" do - https = stub_everything + https = stub({}).as_null_object Net::HTTP.stub!(:new).and_return(https) uri = stub('uri', :host => 'example.com', :port => 443, :path => '', :query => '') @@ -207,10 +207,10 @@ end it "with a proxy granting ticket generated message" do - https = stub_everything + https = stub({}).as_null_object Net::HTTP.stub!(:new).and_return(https) - uri = stub_everything(:host => 'example.com', :port => 443, :path => '') + uri = stub(:host => 'example.com', :port => 443, :path => '').as_null_object URI.stub!(:parse).and_return(uri) http_connection = mock('httpconnection') http_connection.stub!(:request_get).and_return(stub('request', :code => '200')) @@ -223,16 +223,16 @@ end it "with a message category of success" do - https = stub_everything + https = stub({}).as_null_object Net::HTTP.stub!(:new).and_return(https) - uri = stub_everything(:host => 'example.com', :port => 443, :path => '') + uri = stub(:host => 'example.com', :port => 443, :path => '').as_null_object URI.stub!(:parse).and_return(uri) http_connection = mock('httpconnection') http_connection.stub!(:request_get).and_return(stub('request', :code => '200')) https.stub!(:start).and_yield(http_connection) - proxy_granting_ticket = stub_everything(:iou => 'PGTIOU-RANDOM', :ticket => 'PGT-RANDOM', :save! => true) + proxy_granting_ticket = stub(:iou => 'PGTIOU-RANDOM', :ticket => 'PGT-RANDOM', :save! => true).as_null_object ProxyGrantingTicket.stub!(:new).and_return(proxy_granting_ticket) ProxyGrantingTicket.generate_ticket('http://example.com', '10.1.1.1', 'service ticket').message_category.should == 'success' @@ -247,32 +247,32 @@ describe "returns a ticket result" do it "with a proxy granting ticket generated message" do - https = stub_everything + https = stub({}).as_null_object Net::HTTP.stub!(:new).and_return(https) - uri = stub_everything(:host => 'example.com', :port => 443, :path => '') + uri = stub(:host => 'example.com', :port => 443, :path => '').as_null_object URI.stub!(:parse).and_return(uri) http_connection = mock('httpconnection') http_connection.stub!(:request_get).and_return(stub('request', :code => '404')) https.stub!(:start).and_yield(http_connection) - proxy_granting_ticket = stub_everything(:iou => 'PGTIOU-RANDOM', :ticket => 'PGT-RANDOM', :save! => true, :inspect => 'PGT-INSPECT') + proxy_granting_ticket = stub(:iou => 'PGTIOU-RANDOM', :ticket => 'PGT-RANDOM', :save! => true, :inspect => 'PGT-INSPECT').as_null_object ProxyGrantingTicket.stub!(:new).and_return(proxy_granting_ticket) ProxyGrantingTicket.generate_ticket('http://example.com', '10.1.1.1', 'service ticket').message.should == "PGT callback server responded with a bad result code '404'. PGT will not be stored." end it "with a message category of success" do - https = stub_everything + https = stub({}).as_null_object Net::HTTP.stub!(:new).and_return(https) - uri = stub_everything(:host => 'example.com', :port => 443, :path => '') + uri = stub(:host => 'example.com', :port => 443, :path => '').as_null_object URI.stub!(:parse).and_return(uri) http_connection = mock('httpconnection') - http_connection.stub!(:request_get).and_return(stub_everything(:code => '404')) + http_connection.stub!(:request_get).and_return(stub(:code => '404').as_null_object) https.stub!(:start).and_yield(http_connection) - proxy_granting_ticket = stub_everything(:iou => 'PGTIOU-RANDOM', :ticket => 'PGT-RANDOM', :save! => true) + proxy_granting_ticket = stub(:iou => 'PGTIOU-RANDOM', :ticket => 'PGT-RANDOM', :save! => true).as_null_object ProxyGrantingTicket.stub!(:new).and_return(proxy_granting_ticket) ProxyGrantingTicket.generate_ticket('http://example.com', '10.1.1.1', 'service ticket').message_category.should == 'warn' diff --git a/spec/castronaut/models/proxy_ticket_spec.rb b/spec/castronaut/models/proxy_ticket_spec.rb index daa6bd9..daa163e 100644 --- a/spec/castronaut/models/proxy_ticket_spec.rb +++ b/spec/castronaut/models/proxy_ticket_spec.rb @@ -16,7 +16,7 @@ describe "validating ticket" do it "validates the service and ticket using the service ticket validator" do - ServiceTicket.should_receive(:validate_ticket).with('service', 'ticket', true).and_return(stub_everything(:invalid? => true)) + ServiceTicket.should_receive(:validate_ticket).with('service', 'ticket', true).and_return(stub(:invalid? => true).as_null_object) ProxyTicket.validate_ticket('service', 'ticket') end diff --git a/spec/castronaut/models/service_ticket_spec.rb b/spec/castronaut/models/service_ticket_spec.rb index 9009486..d0dc8ba 100644 --- a/spec/castronaut/models/service_ticket_spec.rb +++ b/spec/castronaut/models/service_ticket_spec.rb @@ -114,7 +114,7 @@ describe "when the service and ticket are given" do it "attempts to find the ServiceTicket by the given ticket" do - Castronaut::Models::ServiceTicket.should_receive(:find_by_ticket).with('ticket').and_return(stub_everything) + Castronaut::Models::ServiceTicket.should_receive(:find_by_ticket).with('ticket').and_return(stub({}).as_null_object) Castronaut::Models::ServiceTicket.validate_ticket('service', 'ticket') end @@ -142,17 +142,17 @@ describe "when it is already consumed it returns a ticket result" do it "with the ticket used up message" do - Castronaut::Models::ServiceTicket.stub!(:find_by_ticket).and_return(stub_everything(:consumed? => true)) + Castronaut::Models::ServiceTicket.stub!(:find_by_ticket).and_return(stub(:consumed? => true).as_null_object) Castronaut::Models::ServiceTicket.validate_ticket('service', 'ticket').message.should == "Ticket 'ticket' has already been used up." end it "with the INVALID_TICKET message category" do - Castronaut::Models::ServiceTicket.stub!(:find_by_ticket).and_return(stub_everything(:consumed? => true)) + Castronaut::Models::ServiceTicket.stub!(:find_by_ticket).and_return(stub(:consumed? => true).as_null_object) Castronaut::Models::ServiceTicket.validate_ticket('service', 'ticket').message_category.should == 'INVALID_TICKET' end it "is marked as invalid" do - Castronaut::Models::ServiceTicket.stub!(:find_by_ticket).and_return(stub_everything(:consumed? => true)) + Castronaut::Models::ServiceTicket.stub!(:find_by_ticket).and_return(stub(:consumed? => true).as_null_object) Castronaut::Models::ServiceTicket.validate_ticket('service', 'ticket').should be_invalid end diff --git a/spec/castronaut/presenters/login_spec.rb b/spec/castronaut/presenters/login_spec.rb index d54696f..258b60e 100644 --- a/spec/castronaut/presenters/login_spec.rb +++ b/spec/castronaut/presenters/login_spec.rb @@ -47,7 +47,7 @@ it "validates the ticket generating ticket" do @controller.request.cookies['tgt'] = 'fake cookie' - Castronaut::Models::TicketGrantingTicket.should_receive(:validate_cookie).with('fake cookie').and_return(Castronaut::TicketResult.new(stub_everything)) + Castronaut::Models::TicketGrantingTicket.should_receive(:validate_cookie).with('fake cookie').and_return(Castronaut::TicketResult.new(stub({}).as_null_object)) Castronaut::Presenters::Login.new(@controller).represent! end @@ -143,7 +143,7 @@ describe "login ticket generation" do it "generates a new login ticket when you call :login_ticket" do - Castronaut::Models::LoginTicket.should_receive(:generate_from).and_return(stub_everything(:ticket => 'ticket')) + Castronaut::Models::LoginTicket.should_receive(:generate_from).and_return(stub(:ticket => 'ticket').as_null_object) Castronaut::Presenters::Login.new(@controller).login_ticket end diff --git a/spec/castronaut/presenters/logout_spec.rb b/spec/castronaut/presenters/logout_spec.rb index b3de42a..ddde0dc 100644 --- a/spec/castronaut/presenters/logout_spec.rb +++ b/spec/castronaut/presenters/logout_spec.rb @@ -24,7 +24,7 @@ end it "generates a new login ticket when you call :login_ticket" do - Castronaut::Models::LoginTicket.should_receive(:generate_from).and_return(stub_everything(:ticket => 'ticket')) + Castronaut::Models::LoginTicket.should_receive(:generate_from).and_return(stub(:ticket => 'ticket').as_null_object) Castronaut::Presenters::Logout.new(@controller).login_ticket end diff --git a/spec/castronaut/presenters/process_login_spec.rb b/spec/castronaut/presenters/process_login_spec.rb index d7d5c9e..5a131cb 100644 --- a/spec/castronaut/presenters/process_login_spec.rb +++ b/spec/castronaut/presenters/process_login_spec.rb @@ -122,10 +122,10 @@ Castronaut.config.stub!(:callbacks).and_return({'on_authentication_success' => 'example.com'}) process_login = Castronaut::Presenters::ProcessLogin.new(@controller) - Net::HTTP::Post.stub!(:new).and_return(stub_everything) - Net::HTTP.stub!(:new).and_return(stub_everything) + Net::HTTP::Post.stub!(:new).and_return(stub({}).as_null_object) + Net::HTTP.stub!(:new).and_return(stub({}).as_null_object) - URI.should_receive(:parse).with('example.com').and_return(stub_everything) + URI.should_receive(:parse).with('example.com').and_return(stub({}).as_null_object) process_login.fire_notice 'success', {} end @@ -137,8 +137,8 @@ URI.stub!(:parse).and_return(stub('uri', 'path' => 'uri-path', 'host' => 'example.com', 'port' => '2000', 'scheme'=> 'http')) - Net::HTTP::Post.should_receive(:new).with('uri-path', { "port"=>"2000"}).and_return(stub_everything) - Net::HTTP.stub!(:new).and_return(stub_everything) + Net::HTTP::Post.should_receive(:new).with('uri-path', { "port"=>"2000"}).and_return(stub({}).as_null_object) + Net::HTTP.stub!(:new).and_return(stub({}).as_null_object) process_login.fire_notice 'success', {} end @@ -148,10 +148,10 @@ Castronaut.config.stub!(:callbacks).and_return({'on_authentication_success' => 'example.com'}) process_login = Castronaut::Presenters::ProcessLogin.new(@controller) - Net::HTTP::Post.stub!(:new).and_return(stub_everything) - URI.stub!(:parse).and_return(stub_everything) + Net::HTTP::Post.stub!(:new).and_return(stub({}).as_null_object) + URI.stub!(:parse).and_return(stub({}).as_null_object) - Net::HTTP.should_receive(:new).and_return(stub_everything) + Net::HTTP.should_receive(:new).and_return(stub({}).as_null_object) process_login.fire_notice 'success', {} end @@ -213,7 +213,7 @@ end it "attempts to authenticate" do - adapter = stub_everything(:authenticate => 'result') + adapter = stub(:authenticate => 'result').as_null_object Castronaut::Adapters.stub!(:selected_adapter).and_return(adapter) adapter.should_receive(:authenticate).with('username', 'password').and_return(stub('auth result', :valid? => false, :error_message => 'nil')) Castronaut::Presenters::ProcessLogin.new(@controller).represent! @@ -222,7 +222,7 @@ describe "when authentication fails" do it "appends a could not authenticate message to the messages" do - adapter = stub_everything(:authenticate => 'result') + adapter = stub(:authenticate => 'result').as_null_object Castronaut::Adapters.stub!(:selected_adapter).and_return(adapter) adapter.stub!(:authenticate).with('username', 'password').and_return(stub('auth result', :valid? => false, :error_message => "oggie boogie")) Castronaut::Presenters::ProcessLogin.new(@controller).represent!.messages.should include("oggie boogie") @@ -233,21 +233,21 @@ describe "when authentication succeeds" do before(:each) do - adapter = stub_everything(:authenticate => 'result') + adapter = stub(:authenticate => 'result').as_null_object Castronaut::Adapters.stub!(:selected_adapter).and_return(adapter) - adapter.stub!(:authenticate).with('username', 'password').and_return(stub_everything(:valid? => true)) + adapter.stub!(:authenticate).with('username', 'password').and_return(stub(:valid? => true).as_null_object) @controller.should_receive(:set_cookie) end it "generates a ticket granting ticket" do - Castronaut::Models::TicketGrantingTicket.should_receive(:generate_for).and_return(stub_everything(:to_cookie => 'cookie')) + Castronaut::Models::TicketGrantingTicket.should_receive(:generate_for).and_return(stub(:to_cookie => 'cookie').as_null_object) Castronaut::Presenters::ProcessLogin.new(@controller).represent! end describe "when the service is blank" do it "appends a successful login message to the messages" do - Castronaut::Models::TicketGrantingTicket.stub!(:generate_for).and_return(stub_everything(:to_cookie => 'cookie')) + Castronaut::Models::TicketGrantingTicket.stub!(:generate_for).and_return(stub(:to_cookie => 'cookie').as_null_object) Castronaut::Presenters::ProcessLogin.new(@controller).represent!.messages.should include("You have successfully logged in.") end @@ -257,7 +257,7 @@ before(:each) do @controller.stub!(:params).and_return({ 'username' => 'username', 'password' => 'password', 'service' => 'service'}) - adapter = stub_everything(:authenticate => 'result') + adapter = stub(:authenticate => 'result').as_null_object Castronaut::Adapters.stub!(:selected_adapter).and_return(adapter) adapter.stub!(:authenticate).with('username', 'password').and_return(stub('auth result', :valid? => true)) Castronaut::Models::TicketGrantingTicket.stub!(:generate_for).and_return(stub('ticket granting ticket', :to_cookie => 'cookie')) diff --git a/spec/castronaut/presenters/proxy_validate_spec.rb b/spec/castronaut/presenters/proxy_validate_spec.rb index b2a39cf..fd6ffe7 100644 --- a/spec/castronaut/presenters/proxy_validate_spec.rb +++ b/spec/castronaut/presenters/proxy_validate_spec.rb @@ -40,7 +40,7 @@ it "validates the proxy ticket" do @controller.params['service'] = 'http://example.com' @controller.params['ticket'] = 'footicket' - Castronaut::Models::ProxyTicket.should_receive(:validate_ticket).with('http://example.com', 'footicket').and_return(stub_everything(:valid? => false)) + Castronaut::Models::ProxyTicket.should_receive(:validate_ticket).with('http://example.com', 'footicket').and_return(stub(:valid? => false).as_null_object) Castronaut::Presenters::ProxyValidate.new(@controller).represent! end @@ -52,7 +52,7 @@ end it "exposes the proxy ticket result as :proxy_ticket_result" do - proxy_ticket_result = stub_everything(:valid? => false, :ticket_granting_ticket => stub_everything) + proxy_ticket_result = stub(:valid? => false, :ticket_granting_ticket => stub({}).as_null_object).as_null_object Castronaut::Models::ProxyTicket.should_receive(:validate_ticket).and_return(proxy_ticket_result) Castronaut::Presenters::ProxyValidate.new(@controller).represent!.proxy_ticket_result.should == proxy_ticket_result end @@ -65,8 +65,8 @@ describe "when the proxy ticket result is a proxy ticket" do it "creates an array of proxies from the proxy ticket results service ticket service" do - service_ticket = stub_everything(:service => 'http://myservice.com') - Castronaut::Models::ProxyTicket.should_receive(:validate_ticket).and_return(stub_everything(:valid? => true, :service_ticket => service_ticket)) + service_ticket = stub(:service => 'http://myservice.com').as_null_object + Castronaut::Models::ProxyTicket.should_receive(:validate_ticket).and_return(stub(:valid? => true, :service_ticket => service_ticket).as_null_object) Castronaut::Presenters::ProxyValidate.new(@controller).represent! end @@ -76,9 +76,9 @@ it "attempts to generate a proxy granting ticket" do @controller.params['pgtUrl'] = 'http://proxygrantingticketurl' - Castronaut::Models::ProxyTicket.stub!(:validate_ticket).and_return(stub_everything(:valid? => true, :ticket => 'service ticket', :ticket_granting_ticket => stub_everything)) + Castronaut::Models::ProxyTicket.stub!(:validate_ticket).and_return(stub(:valid? => true, :ticket => 'service ticket', :ticket_granting_ticket => stub({}).as_null_object).as_null_object) - Castronaut::Models::ProxyGrantingTicket.should_receive(:generate_ticket).with('http://proxygrantingticketurl', '10.1.1.1', anything).and_return(stub_everything) + Castronaut::Models::ProxyGrantingTicket.should_receive(:generate_ticket).with('http://proxygrantingticketurl', '10.1.1.1', anything).and_return(stub({}).as_null_object) Castronaut::Presenters::ProxyValidate.new(@controller).represent! end @@ -86,7 +86,7 @@ it "gets :proxy_granting_ticket_iou from the proxy_granting_ticket_result" do @controller.params['pgtUrl'] = 'http://proxygrantingticketurl' - Castronaut::Models::ProxyTicket.stub!(:validate_ticket).and_return(stub('ticket result', :proxies => nil, :valid? => true, :ticket => 'service ticket', :ticket_granting_ticket => stub_everything)) + Castronaut::Models::ProxyTicket.stub!(:validate_ticket).and_return(stub('ticket result', :proxies => nil, :valid? => true, :ticket => 'service ticket', :ticket_granting_ticket => stub({}).as_null_object)) Castronaut::Models::ProxyGrantingTicket.stub!(:generate_ticket).and_return(stub('proxy granting ticket result', :iou => 'pgtiou')) Castronaut::Presenters::ProxyValidate.new(@controller).represent!.proxy_granting_ticket_iou.should == 'pgtiou' diff --git a/spec/castronaut/presenters/service_validate_spec.rb b/spec/castronaut/presenters/service_validate_spec.rb index 8eb50ff..d261604 100644 --- a/spec/castronaut/presenters/service_validate_spec.rb +++ b/spec/castronaut/presenters/service_validate_spec.rb @@ -39,7 +39,7 @@ it "validates the service ticket" do @controller.params['service'] = 'http://example.com' @controller.params['ticket'] = 'footicket' - Castronaut::Models::ServiceTicket.should_receive(:validate_ticket).with('http://example.com', 'footicket').and_return(stub_everything(:valid? => false)) + Castronaut::Models::ServiceTicket.should_receive(:validate_ticket).with('http://example.com', 'footicket').and_return(stub(:valid? => false).as_null_object) Castronaut::Presenters::ServiceValidate.new(@controller).represent! end @@ -61,7 +61,7 @@ @controller.params['pgtUrl'] = 'http://proxygrantingticketurl' Castronaut::Models::ServiceTicket.stub!(:validate_ticket).and_return(stub('ticket result', :valid? => true, :ticket => 'service ticket', :ticket_granting_ticket => stub('tgt'))) - Castronaut::Models::ProxyGrantingTicket.should_receive(:generate_ticket).with('http://proxygrantingticketurl', '10.1.1.1', 'service ticket').and_return(stub_everything) + Castronaut::Models::ProxyGrantingTicket.should_receive(:generate_ticket).with('http://proxygrantingticketurl', '10.1.1.1', 'service ticket').and_return(stub({}).as_null_object) Castronaut::Presenters::ServiceValidate.new(@controller).represent! end @@ -69,7 +69,7 @@ it "gets :proxy_granting_ticket_iou from the proxy_granting_ticket_result" do @controller.params['pgtUrl'] = 'http://proxygrantingticketurl' - Castronaut::Models::ServiceTicket.stub!(:validate_ticket).and_return(stub('ticket result', :proxies => nil, :valid? => true, :ticket => 'service ticket', :ticket_granting_ticket => stub_everything)) + Castronaut::Models::ServiceTicket.stub!(:validate_ticket).and_return(stub('ticket result', :proxies => nil, :valid? => true, :ticket => 'service ticket', :ticket_granting_ticket => stub({}).as_null_object)) Castronaut::Models::ProxyGrantingTicket.stub!(:generate_ticket).and_return(stub('proxy granting ticket result', :iou => 'pgtiou')) Castronaut::Presenters::ServiceValidate.new(@controller).represent!.proxy_granting_ticket_iou.should == 'pgtiou' diff --git a/spec/castronaut_spec.rb b/spec/castronaut_spec.rb index dcd46cd..044aae2 100644 --- a/spec/castronaut_spec.rb +++ b/spec/castronaut_spec.rb @@ -11,7 +11,7 @@ end it "allows you to reset the config" do - new_config = stub_everything + new_config = stub({}).as_null_object original_config = Castronaut.config Castronaut.config.should_not == new_config diff --git a/spec/spec_helper.rb b/spec/spec_helper.rb index 5476c9c..36af40c 100644 --- a/spec/spec_helper.rb +++ b/spec/spec_helper.rb @@ -1,8 +1,8 @@ require 'rubygems' gem 'sqlite3-ruby' -gem :rspec, '>= 1.1.4' -gem :activerecord, '>= 2.1.0' +gem 'rspec', '>= 1.2.4' +gem 'activerecord', '>= 2.1.0' require File.join(File.dirname(__FILE__), '..', 'castronaut') require File.join(File.dirname(__FILE__), 'spec_rails_mocks')