Sha256: a2271e245a4530be767b45ca46623308b2419475c665c29e50742bd452309afd

Contents?: true

Size: 1.95 KB

Versions: 11

Compression:

Stored size: 1.95 KB

Contents

require File.expand_path('../../../../spec/helper', __FILE__)
require File.expand_path('../../../../examples/helpers/httpdigest', __FILE__)

# Not sure if we should change the behaviour of digest_authorize, it keeps
# challenging the authorization even after a logout, which will log us in right
# away again.
#
# IMHO, digest_authorize should only be valid for the following request.
#
# So for now, we have to reset the values of @digest_username and
# @digest_password before we make a request.

describe Ramaze::Helper do
  behaves_like :rack_test

  it 'authorizes request for /eyes_only' do
    digest_authorize nil, nil
    get '/eyes_only'
    last_response.status.should == 401
    last_response.body.should == "Unauthorized"

    digest_authorize 'foo', 'oof'
    get '/eyes_only'
    last_response.status.should == 200
    last_response.body.should == "Shhhh don't tell anyone"
  end

  it 'authorizes request for /secret as admin' do
    digest_authorize nil, nil
    get '/secret'
    last_response.status.should == 401
    last_response.body.should == 'Unauthorized'

    digest_authorize 'admin', 'secret'
    get '/secret'

    last_response.status.should == 200
    last_response.body.should == "Hello <em>admin</em>, welcome to SECRET world."
  end

  it 'authorizes request for /secret as root' do
    digest_authorize nil, nil
    get '/secret'
    last_response.status.should == 401
    last_response.body.should == 'Unauthorized'

    digest_authorize 'root', 'password'
    get '/secret'
    last_response.status.should == 200
    last_response.body.should == "Hello <em>root</em>, welcome to SECRET world."
  end

  it 'authorizes request for /guest' do
    digest_authorize nil, nil
    get '/guest'
    last_response.status.should == 401
    last_response.body.should == 'Unauthorized'

    digest_authorize 'guest', 'access'
    get '/guest'
    last_response.status.should == 200
    last_response.body.should == "Hello <em>guest</em>, welcome to GUEST world."
  end
end

Version data entries

11 entries across 11 versions & 3 rubygems

Version Path
Pistos-ramaze-2009.06.12 spec/examples/helpers/httpdigest.rb
manveru-ramaze-2009.07 spec/examples/helpers/httpdigest.rb
ramaze-2011.01.30 spec/examples/helpers/httpdigest.rb
ramaze-2011.01 spec/examples/helpers/httpdigest.rb
ramaze-2010.06.18 spec/examples/helpers/httpdigest.rb
ramaze-2010.04.04 spec/examples/helpers/httpdigest.rb
ramaze-2010.04 spec/examples/helpers/httpdigest.rb
ramaze-2010.03 spec/examples/helpers/httpdigest.rb
ramaze-2010.01 spec/examples/helpers/httpdigest.rb
ramaze-2009.10 spec/examples/helpers/httpdigest.rb
ramaze-2009.07 spec/examples/helpers/httpdigest.rb