From 9dbc60d36df3c96ba42ebded23ce12f9e29855f0 Mon Sep 17 00:00:00 2001 From: Vasiliy Ermolovich Date: Sat, 4 Jan 2014 18:52:54 +0300 Subject: [PATCH 1/5] update mocha --- gemfiles/Gemfile.rails-head | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gemfiles/Gemfile.rails-head b/gemfiles/Gemfile.rails-head index d0146172..0764f2a2 100644 --- a/gemfiles/Gemfile.rails-head +++ b/gemfiles/Gemfile.rails-head @@ -11,7 +11,7 @@ group :test do gem "omniauth-facebook" gem "omniauth-openid", "~> 1.0.1" gem "webrat", "0.7.3", :require => false - gem "mocha", "~> 0.13.1", :require => false + gem "mocha", "~> 0.14", :require => false end platforms :jruby do From 1b1be514c8a640073686229759d56f2793ba4010 Mon Sep 17 00:00:00 2001 From: Vasiliy Ermolovich Date: Sat, 4 Jan 2014 18:53:40 +0300 Subject: [PATCH 2/5] make webrat compatible with rails 4.1 --- test/support/action_controller/record_identifier.rb | 10 ++++++++++ 1 file changed, 10 insertions(+) create mode 100644 test/support/action_controller/record_identifier.rb diff --git a/test/support/action_controller/record_identifier.rb b/test/support/action_controller/record_identifier.rb new file mode 100644 index 00000000..89b3483e --- /dev/null +++ b/test/support/action_controller/record_identifier.rb @@ -0,0 +1,10 @@ +# Since webrat uses ActionController::RecordIdentifier class that was moved to +# ActionView namespace in Rails 4.1+ + +unless defined?(ActionController::RecordIdentifier) + require 'action_view/record_identifier' + + module ActionController + RecordIdentifier = ActionView::RecordIdentifier + end +end From 49086d0294d0b2e18ebb8d7a83aa15063d8e703c Mon Sep 17 00:00:00 2001 From: Vasiliy Ermolovich Date: Sat, 4 Jan 2014 18:54:19 +0300 Subject: [PATCH 3/5] remove warnings regarding number extensions --- test/integration/trackable_test.rb | 2 +- test/test_helpers_test.rb | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/test/integration/trackable_test.rb b/test/integration/trackable_test.rb index 68cfb93c..44156bfd 100644 --- a/test/integration/trackable_test.rb +++ b/test/integration/trackable_test.rb @@ -63,7 +63,7 @@ class TrackableHooksTest < ActionDispatch::IntegrationTest end test "does not update anything if user has signed out along the way" do - swap Devise, :allow_unconfirmed_access_for => 0 do + swap Devise, :allow_unconfirmed_access_for => 0.days do user = create_user(:confirm => false) sign_in_as_user diff --git a/test/test_helpers_test.rb b/test/test_helpers_test.rb index a91b9f68..7db2c6f8 100644 --- a/test/test_helpers_test.rb +++ b/test/test_helpers_test.rb @@ -17,7 +17,7 @@ class TestHelpersTest < ActionController::TestCase end test "redirects if attempting to access a page with an unconfirmed account" do - swap Devise, :allow_unconfirmed_access_for => 0 do + swap Devise, :allow_unconfirmed_access_for => 0.days do user = create_user assert !user.active_for_authentication? @@ -28,7 +28,7 @@ class TestHelpersTest < ActionController::TestCase end test "returns nil if accessing current_user with an unconfirmed account" do - swap Devise, :allow_unconfirmed_access_for => 0 do + swap Devise, :allow_unconfirmed_access_for => 0.days do user = create_user assert !user.active_for_authentication? From 7b661338611a6aec8a7410ce560643219b12f4a0 Mon Sep 17 00:00:00 2001 From: Lucas Mazza Date: Wed, 4 Dec 2013 18:22:57 -0200 Subject: [PATCH 4/5] Remove subscriber block so it won't leak across the test suite. --- test/controllers/sessions_controller_test.rb | 24 ++++++++++++-------- 1 file changed, 14 insertions(+), 10 deletions(-) diff --git a/test/controllers/sessions_controller_test.rb b/test/controllers/sessions_controller_test.rb index b25b8000..38ee07d9 100644 --- a/test/controllers/sessions_controller_test.rb +++ b/test/controllers/sessions_controller_test.rb @@ -5,17 +5,21 @@ class SessionsControllerTest < ActionController::TestCase include Devise::TestHelpers test "#create doesn't raise unpermitted params when sign in fails" do - ActiveSupport::Notifications.subscribe /unpermitted_parameters/ do |name, start, finish, id, payload| - flunk "Unpermitted params: #{payload}" + begin + subscriber = ActiveSupport::Notifications.subscribe /unpermitted_parameters/ do |name, start, finish, id, payload| + flunk "Unpermitted params: #{payload}" + end + request.env["devise.mapping"] = Devise.mappings[:user] + request.session["user_return_to"] = 'foo.bar' + create_user + post :create, :user => { + :email => "wrong@email.com", + :password => "wrongpassword" + } + assert_equal 200, @response.status + ensure + ActiveSupport::Notifications.unsubscribe(subscriber) end - request.env["devise.mapping"] = Devise.mappings[:user] - request.session["user_return_to"] = 'foo.bar' - create_user - post :create, :user => { - :email => "wrong@email.com", - :password => "wrongpassword" - } - assert_equal 200, @response.status end test "#create works even with scoped views" do From 6d51e67fac84de1acb63c73e6a8ee3f802d5a642 Mon Sep 17 00:00:00 2001 From: Vasiliy Ermolovich Date: Sat, 4 Jan 2014 19:19:13 +0300 Subject: [PATCH 5/5] properly change devise config in specs --- test/controllers/internal_helpers_test.rb | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/test/controllers/internal_helpers_test.rb b/test/controllers/internal_helpers_test.rb index 59dc7a59..07aa6b95 100644 --- a/test/controllers/internal_helpers_test.rb +++ b/test/controllers/internal_helpers_test.rb @@ -113,8 +113,11 @@ class HelpersTest < ActionController::TestCase test 'navigational_formats not returning a wild card' do MyController.send(:public, :navigational_formats) - Devise.navigational_formats = [:"*/*", :html] - assert_not @controller.navigational_formats.include?(:"*/*") + + swap Devise, :navigational_formats => ['*/*', :html] do + assert_not @controller.navigational_formats.include?("*/*") + end + MyController.send(:protected, :navigational_formats) end end