diff test/integration/account_test.rb @ 1337:077b8890835a cannam

Merge from live branch
author Chris Cannam
date Thu, 20 Jun 2013 13:14:02 +0100
parents 433d4f72a19b
children 622f24f53b42 261b3d9a4903
line wrap: on
line diff
--- a/test/integration/account_test.rb	Fri Jun 14 11:30:07 2013 +0100
+++ b/test/integration/account_test.rb	Thu Jun 20 13:14:02 2013 +0100
@@ -1,5 +1,5 @@
 # Redmine - project management software
-# Copyright (C) 2006-2011  Jean-Philippe Lang
+# Copyright (C) 2006-2012  Jean-Philippe Lang
 #
 # This program is free software; you can redistribute it and/or
 # modify it under the terms of the GNU General Public License
@@ -66,7 +66,6 @@
     assert_template 'my/page'
     assert_equal user.id, session[:user_id]
     assert_not_nil user.reload.last_login_on
-    assert user.last_login_on.utc > 10.second.ago.utc
   end
 
   def test_lost_password
@@ -75,6 +74,7 @@
     get "account/lost_password"
     assert_response :success
     assert_template "account/lost_password"
+    assert_select 'input[name=mail]'
 
     post "account/lost_password", :mail => 'jSmith@somenet.foo'
     assert_redirected_to "/login"
@@ -87,12 +87,15 @@
     get "account/lost_password", :token => token.value
     assert_response :success
     assert_template "account/password_recovery"
+    assert_select 'input[type=hidden][name=token][value=?]', token.value
+    assert_select 'input[name=new_password]'
+    assert_select 'input[name=new_password_confirmation]'
 
-    post "account/lost_password", :token => token.value, :new_password => 'newpass', :new_password_confirmation => 'newpass'
+    post "account/lost_password", :token => token.value, :new_password => 'newpass123', :new_password_confirmation => 'newpass123'
     assert_redirected_to "/login"
     assert_equal 'Password was successfully updated.', flash[:notice]
 
-    log_user('jsmith', 'newpass')
+    log_user('jsmith', 'newpass123')
     assert_equal 0, Token.count
   end
 
@@ -103,8 +106,8 @@
     assert_response :success
     assert_template 'account/register'
 
-    post 'account/register', :user => {:login => "newuser", :language => "en", :firstname => "New", :lastname => "User", :mail => "newuser@foo.bar"},
-                             :password => "newpass", :password_confirmation => "newpass"
+    post 'account/register', :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
@@ -119,8 +122,8 @@
   def test_register_with_manual_activation
     Setting.self_registration = '2'
 
-    post 'account/register', :user => {:login => "newuser", :language => "en", :firstname => "New", :lastname => "User", :mail => "newuser@foo.bar"},
-                             :password => "newpass", :password_confirmation => "newpass"
+    post 'account/register', :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
@@ -129,8 +132,8 @@
     Setting.self_registration = '1'
     Token.delete_all
 
-    post 'account/register', :user => {:login => "newuser", :language => "en", :firstname => "New", :lastname => "User", :mail => "newuser@foo.bar"},
-                             :password => "newpass", :password_confirmation => "newpass"
+    post 'account/register', :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?
 
@@ -141,17 +144,15 @@
 
     get 'account/activate', :token => token.value
     assert_redirected_to '/login'
-    log_user('newuser', 'newpass')
+    log_user('newuser', 'newpass123')
   end
 
-  if Object.const_defined?(:Mocha)
-
   def test_onthefly_registration
     # disable registration
     Setting.self_registration = '0'
     AuthSource.expects(:authenticate).returns({:login => 'foo', :firstname => 'Foo', :lastname => 'Smith', :mail => 'foo@bar.com', :auth_source_id => 66})
 
-    post 'account/login', :username => 'foo', :password => 'bar'
+    post '/login', :username => 'foo', :password => 'bar'
     assert_redirected_to '/my/page'
 
     user = User.find_by_login('foo')
@@ -165,7 +166,7 @@
     Setting.self_registration = '0'
     AuthSource.expects(:authenticate).returns({:login => 'foo', :lastname => 'Smith', :auth_source_id => 66})
 
-    post 'account/login', :username => 'foo', :password => 'bar'
+    post '/login', :username => 'foo', :password => 'bar'
     assert_response :success
     assert_template 'account/register'
     assert_tag :input, :attributes => { :name => 'user[firstname]', :value => '' }
@@ -181,26 +182,4 @@
     assert_equal 66, user.auth_source_id
     assert user.hashed_password.blank?
   end
-
-  def test_login_and_logout_should_clear_session
-    get '/login'
-    sid = session[:session_id]
-
-    post '/login', :username => 'admin', :password => 'admin'
-    assert_redirected_to '/my/page'
-    assert_not_equal sid, session[:session_id], "login should reset session"
-    assert_equal 1, session[:user_id]
-    sid = session[:session_id]
-
-    get '/'
-    assert_equal sid, session[:session_id]
-
-    get '/logout'
-    assert_not_equal sid, session[:session_id], "logout should reset session"
-    assert_nil session[:user_id]
-  end
-
-  else
-    puts 'Mocha is missing. Skipping tests.'
-  end
 end