with_settings :autologin => '7' do
assert_difference 'Token.count', 2 do
# User logs in with 'autologin' checked
- post '/login', :params => {
+ post(
+ '/login',
+ :params => {
:username => user.login,
:password => 'admin',
:autologin => 1
}
+ )
assert_redirected_to '/my/page'
end
token = Token.where(:action => 'autologin').order(:id => :desc).first
with_settings :autologin => '7' do
assert_difference 'Token.count', 2 do
- post '/login', :params => {
+ post(
+ '/login',
+ :params => {
:username => 'admin',
:password => 'admin',
:autologin => 1
}
+ )
assert_response 302
end
assert cookies['custom_autologin'].present?
assert_response :success
assert_select 'input[name=mail]'
- post "/account/lost_password", :params => {
- :mail => 'jSmith@somenet.foo'
- }
+ post("/account/lost_password", :params => {:mail => 'jSmith@somenet.foo'})
assert_redirected_to "/login"
token = Token.first
assert_equal 'jsmith@somenet.foo', token.user.mail
assert !token.expired?
- get "/account/lost_password", :params => {
- :token => token.value
- }
+ get("/account/lost_password", :params => {:token => token.value})
assert_redirected_to '/account/lost_password'
follow_redirect!
assert_select 'input[name=new_password]'
assert_select 'input[name=new_password_confirmation]'
- post "/account/lost_password", :params => {
+ post(
+ "/account/lost_password",
+ :params => {
:token => token.value, :new_password => 'newpass123',
:new_password_confirmation => 'newpass123'
}
+ )
assert_redirected_to "/login"
assert_equal 'Password was successfully updated.', flash[:notice]
assert_response :success
assert_select 'input[name=mail]'
- post "/account/lost_password", :params => {
- :mail => 'jSmith@somenet.foo'
- }
+ post("/account/lost_password", :params => {:mail => 'jSmith@somenet.foo'})
assert_redirected_to "/login"
token = Token.first
assert_equal 'jsmith@somenet.foo', token.user.mail
refute token.expired?
- get "/account/lost_password", :params => {
- :token => token.value
- }
+ get("/account/lost_password", :params => {:token => token.value})
assert_redirected_to '/account/lost_password'
follow_redirect!
assert_select 'input[name=new_password]'
assert_select 'input[name=new_password_confirmation]'
- post "/account/lost_password", :params => {
+ post(
+ "/account/lost_password",
+ :params => {
:token => token.value, :new_password => 'newpass123',
:new_password_confirmation => 'newpass123'
}
-
+ )
assert_redirected_to "/account/lost_password"
assert_equal 'This password recovery link has expired, please try again.', flash[:error]
follow_redirect!
assert_response :success
- post "/account/lost_password", :params => {
- :mail => 'jSmith@somenet.foo'
- }
+ post("/account/lost_password", :params => {:mail => 'jSmith@somenet.foo'})
assert_redirected_to "/login"
# should have a new token now
def test_user_with_must_change_passwd_should_be_forced_to_change_its_password
User.find_by_login('jsmith').update_attribute :must_change_passwd, true
- post '/login', :params => {
- :username => 'jsmith',
- :password => 'jsmith'
- }
+ post('/login', :params => {:username => 'jsmith', :password => 'jsmith'})
assert_redirected_to '/my/page'
follow_redirect!
assert_redirected_to '/my/password'
user.language = 'it'
user.save!
- post '/login', :params => {
- :username => 'jsmith',
- :password => 'jsmith'
- }
+ post('/login', :params => {:username => 'jsmith', :password => 'jsmith'})
assert_redirected_to '/my/page'
follow_redirect!
assert_redirected_to '/my/password'
def test_user_with_must_change_passwd_should_be_able_to_change_its_password
User.find_by_login('jsmith').update_attribute :must_change_passwd, true
- post '/login', :params => {
- :username => 'jsmith',
- :password => 'jsmith'
- }
+ post('/login', :params => {:username => 'jsmith', :password => 'jsmith'})
assert_redirected_to '/my/page'
follow_redirect!
assert_redirected_to '/my/password'
follow_redirect!
assert_response :success
- post '/my/password', :params => {
+ post(
+ '/my/password',
+ :params => {
:password => 'jsmith',
:new_password => 'newpassword',
:new_password_confirmation => 'newpassword'
}
+ )
assert_redirected_to '/my/account'
follow_redirect!
assert_response :success
User.find_by_login('jsmith').update_attribute :passwd_changed_on, 14.days.ago
with_settings :password_max_age => 7 do
- post '/login', :params => {
- :username => 'jsmith',
- :password => 'jsmith'
- }
+ post('/login', :params => {:username => 'jsmith', :password => 'jsmith'})
assert_redirected_to '/my/page'
follow_redirect!
assert_redirected_to '/my/password'
User.find_by_login('jsmith').update_attribute :passwd_changed_on, 14.days.ago
with_settings :password_max_age => 7 do
- post '/login', :params => {
- :username => 'jsmith',
- :password => 'jsmith'
- }
+ post('/login', :params => {:username => 'jsmith', :password => 'jsmith'})
assert_redirected_to '/my/page'
follow_redirect!
assert_redirected_to '/my/password'
follow_redirect!
assert_response :success
- post '/my/password', :params => {
+ post(
+ '/my/password',
+ :params => {
:password => 'jsmith',
:new_password => 'newpassword',
:new_password_confirmation => 'newpassword'
}
+ )
assert_redirected_to '/my/account'
follow_redirect!
assert_response :success
get '/account/register'
assert_response :success
- post '/account/register', :params => {
+ post(
+ '/account/register',
+ :params => {
:user => {
:login => "newuser", :language => "en",
:firstname => "New", :lastname => "User", :mail => "newuser@foo.bar",
:password => "newpass123", :password_confirmation => "newpass123"
}
}
+ )
assert_redirected_to '/my/account'
follow_redirect!
assert_response :success
def test_register_with_manual_activation
Setting.self_registration = '2'
- post '/account/register', :params => {
+ post(
+ '/account/register',
+ :params => {
:user => {
:login => "newuser", :language => "en",
:firstname => "New", :lastname => "User", :mail => "newuser@foo.bar",
:password => "newpass123", :password_confirmation => "newpass123"
}
}
+ )
assert_redirected_to '/login'
assert !User.find_by_login('newuser').active?
end
Setting.self_registration = '1'
Token.delete_all
- post '/account/register', :params => {
+ post(
+ '/account/register',
+ :params => {
:user => {
:login => "newuser", :language => "en",
:firstname => "New", :lastname => "User", :mail => "newuser@foo.bar",
:password => "newpass123", :password_confirmation => "newpass123"
}
}
+ )
assert_redirected_to '/login'
assert !User.find_by_login('newuser').active?
assert_equal 'newuser@foo.bar', token.user.mail
assert !token.expired?
- get '/account/activate', :params => {
- :token => token.value
- }
+ get('/account/activate', :params => {:token => token.value})
assert_redirected_to '/login'
log_user('newuser', 'newpass123')
end
Setting.self_registration = '0'
AuthSource.expects(:authenticate).returns(
{:login => 'foo', :firstname => 'Foo', :lastname => 'Smith',
- :mail => 'foo@bar.com', :auth_source_id => 66})
-
- post '/login', :params => {
- :username => 'foo',
- :password => 'bar'
- }
+ :mail => 'foo@bar.com', :auth_source_id => 66}
+ )
+ post('/login', :params => {:username => 'foo', :password => 'bar'})
assert_redirected_to '/my/page'
user = User.find_by_login('foo')
# disable registration
Setting.self_registration = '0'
AuthSource.expects(:authenticate).returns(
- {:login => 'foo', :lastname => 'Smith', :auth_source_id => 66})
-
- post '/login', :params => {
- :username => 'foo',
- :password => 'bar'
- }
+ {:login => 'foo', :lastname => 'Smith', :auth_source_id => 66}
+ )
+ post('/login', :params => {:username => 'foo', :password => 'bar'})
assert_response :success
assert_select 'input[name=?][value=""]', 'user[firstname]'
assert_select 'input[name=?][value=Smith]', 'user[lastname]'
assert_select 'input[name=?]', 'user[login]', 0
assert_select 'input[name=?]', 'user[password]', 0
- post '/account/register', :params => {
+ post(
+ '/account/register',
+ :params => {
:user => {
:firstname => 'Foo', :lastname => 'Smith', :mail => 'foo@bar.com'
}
}
+ )
assert_redirected_to '/my/account'
user = User.find_by_login('foo')
# register a new account
assert_difference 'User.count' do
assert_difference 'Token.count' do
- post '/account/register', :params => {
+ post(
+ '/account/register',
+ :params => {
:user => {
:login => "newuser", :language => "en",
:firstname => "New", :lastname => "User", :mail => "newuser@foo.bar",
:password => "newpass123", :password_confirmation => "newpass123"
}
}
+ )
end
end
user = User.order('id desc').first
# try to use "lost password"
assert_no_difference 'ActionMailer::Base.deliveries.size' do
- post '/account/lost_password', :params => {
+ post(
+ '/account/lost_password',
+ :params => {
:mail => 'newuser@foo.bar'
}
+ )
end
assert_redirected_to '/account/lost_password'
follow_redirect!
get activation_path
assert_redirected_to '/login'
- post '/login', :params => {
- :username => 'newuser',
- :password => 'newpass123'
- }
+ post('/login', :params => {:username => 'newuser', :password => 'newpass123'})
assert_redirected_to '/my/page'
end
end