Guest User

Untitled

a guest
Mar 21st, 2020
95
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Ruby 4.33 KB | None | 0 0
  1.  def handle_access_denied(exception)
  2.     byebug
  3.     logger.error(exception.message)
  4.     logger.error(exception.backtrace)
  5.  
  6.     if user_signed_in? || is_a?(SessionsController)
  7.       render 'sessions/access_denied.html', layout: 'open_access', status: :unauthorized
  8.       false
  9.     else
  10.       redirect_to login_path
  11.     end  
  12.   end
  13.  
  14. describe '#handle_access_denied' do
  15.     let(:logger_mock) { double("Rails.logger").as_null_object }
  16.     let(:exception) { StandardError.new "This is an exception" }
  17.  
  18.     subject { controller.send :handle_access_denied, exception }
  19.  
  20.     context 'when user signed in' do
  21.       before do
  22.         session[:user_id] = user.id
  23.         allow(logger_mock).to receive(:error).and_return(true)
  24.         expect(logger_mock.error).to be true
  25.       end
  26.  
  27.       it '' do
  28.         is_expected.to render_template(file: "sessions/access_denied.html")
  29.         #expect(response.status).to eq(401)
  30.         #expect(response).to render_template(partial: "sessions/access_denied.html")
  31.       end
  32.     end
  33.  
  34.     context 'when user is not signed in' do
  35.       before do
  36.         allow(logger_mock).to receive(:error).and_return(true)
  37.         expect(logger_mock.error).to be true
  38.       end
  39.  
  40.       it '' do
  41.         is_expected.to redirect_to(login_path)
  42.       end
  43.     end
  44.   end
  45.  
  46. #еррор
  47.  RuntimeError:
  48.        ActionController::RackDelegation#status= delegated to @_response.status=, but @_response is nil: #<#<Class:0x00560b83c57508>:0x00560b839da488 @_routes=nil, @_action_has_layout=true, @_headers={"Content-Type"=>"text/html"}, @_status=200, @_request=#<ActionController::TestRequest:0x00560b835a8338 @env={"rack.version"=>[1, 1], "rack.input"=>#<StringIO:0x00560b7e6bcaa8>, "rack.errors"=>#<StringIO:0x00560b7e6bcbc0>, "rack.multithread"=>true, "rack.multiprocess"=>true, "rack.run_once"=>false, "REQUEST_METHOD"=>"GET", "SERVER_NAME"=>"example.org", "SERVER_PORT"=>"80", "QUERY_STRING"=>"", "rack.url_scheme"=>"http", "HTTPS"=>"off", "SCRIPT_NAME"=>"", "CONTENT_LENGTH"=>"0", "action_dispatch.routes"=>#<ActionDispatch::Routing::RouteSet:0x00560b7f477288>, "action_dispatch.parameter_filter"=>[:password], "action_dispatch.secret_token"=>"92f45566e092d8c7df821cdebd1382f1c66b35336181654a72564ec54dd0e3453082d20746d55b487b16c4cb49b4a13060d4006db48834d84efaa777d5de7cf8", "action_dispatch.show_exceptions"=>false, "action_dispatch.show_detailed_exceptions"=>true, "action_dispatch.logger"=>#<ActiveSupport::TaggedLogging:0x00560b7f551550 @logger=#<ActiveSupport::BufferedLogger:0x00560b7f536fc0 @log_dest=#<File:/home/orkos/Desktop/git_referrals/log/test.log>, @log=#<Logger:0x00560b7f551848 @progname=nil, @level=0, @default_formatter=#<Logger::Formatter:0x00560b7f5517f8 @datetime_format=nil>, @formatter=#<Logger::SimpleFormatter:0x00560b7f551640 @datetime_format=nil>, @logdev=#<Logger::LogDevice:0x00560b7f551730 @shift_size=nil, @shift_age=nil, @filename=nil, @dev=#<File:/home/orkos/Desktop/git_referrals/log/test.log>, @mutex=#<Logger::LogDevice::LogDeviceMutex:0x00560b7f5516e0 @mon_owner=nil, @mon_count=0, @mon_mutex=#<Mutex:0x00560b7f551690>>>>>>, "action_dispatch.backtrace_cleaner"=>#<Rails::BacktraceCleaner:0x00560b839d20a8 @filters=[#<Proc:0x00560b839d11f8@/home/orkos/.rvm/gems/ruby-2.0.0-p648/gems/railties-3.2.15/lib/rails/backtrace_cleaner.rb:10>, #<Proc:0x00560b839d11d0@/home/orkos/.rvm/gems/ruby-2.0.0-p648/gems/railties-3.2.15/lib/rails/backtrace_cleaner.rb:11>, #<Proc:0x00560b839d11a8@/home/orkos/.rvm/gems/ruby-2.0.0-p648/gems/railties-3.2.15/lib/rails/backtrace_cleaner.rb:12>, #<Proc:0x00560b839db018@/home/orkos/.rvm/gems/ruby-2.0.0-p648/gems/railties-3.2.15/lib/rails/backtrace_cleaner.rb:26>], @silencers=[#<Proc:0x00560b839daff0@/home/orkos/.rvm/gems/ruby-2.0.0-p648/gems/railties-3.2.15/lib/rails/backtrace_cleaner.rb:15>]>, "HTTP_HOST"=>"test.host", "REMOTE_ADDR"=>"0.0.0.0", "HTTP_USER_AGENT"=>"Rails Testing", "rack.session"=>{}, "rack.session.options"=>{:key=>"rack.session", :path=>"/", :domain=>nil, :expire_after=>nil, :secure=>false, :httponly=>true, :defer=>false, :renew=>false, :sidbits=>128, :cookie_only=>true, :secure_random=>SecureRandom, :id=>"8193275faeea27052cf3c6f4d7efb066"}, "action_dispatch.request.path_parameters"=>{}}, @protocol="http://", @port=80, @symbolized_path_params={}>, @_response=nil, @_params={}, @_config={}, @_url_options={:host=>"test.host", :port=>nil, :protocol=>"http://", :_path_segments=>{}}, @_env={}>
Advertisement
Add Comment
Please, Sign In to add comment