From ac7c45bca036db2c5bfd692d77ff7f1da526955f Mon Sep 17 00:00:00 2001 From: Chris Flipse Date: Sat, 9 Jun 2018 19:53:17 -0400 Subject: [PATCH] add test helper to set oauth tokens --- test/controllers/user_preferences_controller_test.rb | 5 +++++ test/test_helper.rb | 11 +++++++++++ 2 files changed, 16 insertions(+) diff --git a/test/controllers/user_preferences_controller_test.rb b/test/controllers/user_preferences_controller_test.rb index 3e5cbb369..1a51779ed 100644 --- a/test/controllers/user_preferences_controller_test.rb +++ b/test/controllers/user_preferences_controller_test.rb @@ -35,6 +35,7 @@ class UserPreferencesControllerTest < ActionController::TestCase # authenticate as a user with no preferences basic_authorization create(:user).email, "test" + grant_oauth_token :allow_read_prefs # try the read again get :read @@ -75,6 +76,7 @@ class UserPreferencesControllerTest < ActionController::TestCase # authenticate as a user with preferences basic_authorization user.email, "test" + grant_oauth_token :allow_read_prefs # try the read again get :read_one, :params => { :preference_key => "key" } @@ -108,6 +110,7 @@ class UserPreferencesControllerTest < ActionController::TestCase # authenticate as a user with preferences basic_authorization user.email, "test" + grant_oauth_token :allow_write_prefs # try the put again assert_no_difference "UserPreference.count" do @@ -159,6 +162,7 @@ class UserPreferencesControllerTest < ActionController::TestCase # authenticate as a user with preferences basic_authorization user.email, "test" + grant_oauth_token :allow_write_prefs # try adding a new preference assert_difference "UserPreference.count", 1 do @@ -196,6 +200,7 @@ class UserPreferencesControllerTest < ActionController::TestCase # authenticate as a user with preferences basic_authorization user.email, "test" + grant_oauth_token :allow_write_prefs # try the delete again assert_difference "UserPreference.count", -1 do diff --git a/test/test_helper.rb b/test/test_helper.rb index 7198519a7..39e8cdd05 100644 --- a/test/test_helper.rb +++ b/test/test_helper.rb @@ -85,6 +85,17 @@ module ActiveSupport @request.env["HTTP_AUTHORIZATION"] = format("Basic %{auth}", :auth => Base64.encode64("#{user}:#{pass}")) end + ## + # set oauth token permissions + def grant_oauth_token(*tokens) + request.env["oauth.token"] = AccessToken.new do |token| + tokens.each do |t| + token.public_send("#{t}=", true) + end + end + end + + ## # set request readers to ask for a particular error format def error_format(format) -- 2.43.2