summaryrefslogtreecommitdiff
path: root/test/support/assert_responses.rb
diff options
context:
space:
mode:
authorAzul <azul@leap.se>2014-07-17 11:18:57 +0200
committerAzul <azul@leap.se>2014-07-17 11:18:57 +0200
commite8a3df62d14c8dd775811f4af885cf7e76d5d3f6 (patch)
tree99905fc826fbcdf0634be3b31945e6df8c7e7a1e /test/support/assert_responses.rb
parentbb10a669e1129c662ba01f223bd5a0ee7f2a0344 (diff)
clean up error assertions in tests
We're not testing the redirects anymore. But the error messages should be pretty clear already. We can start testing redirects again once we redirect to different places for different actions.
Diffstat (limited to 'test/support/assert_responses.rb')
-rw-r--r--test/support/assert_responses.rb19
1 files changed, 19 insertions, 0 deletions
diff --git a/test/support/assert_responses.rb b/test/support/assert_responses.rb
index 19c2768..1c9d49d 100644
--- a/test/support/assert_responses.rb
+++ b/test/support/assert_responses.rb
@@ -55,6 +55,25 @@ module AssertResponses
get_response.headers["Content-Disposition"]
end
+ def assert_login_required
+ assert_error_response :not_authorized_login, :unauthorized
+ end
+
+ def assert_access_denied
+ assert_error_response :not_authorized, :forbidden
+ end
+
+ def assert_error_response(key, status=nil)
+ message = I18n.t(key)
+ if content_type == 'application/json'
+ status ||= :unprocessable_entity
+ assert_json_response('error' => key.to_s, 'message' => message)
+ assert_response status
+ else
+ assert_equal({:alert => message}, flash.to_hash)
+ end
+ end
+
end
class ::ActionController::TestCase