##// END OF EJS Templates
Adds a test for User.try_to_login with active_only set to false....
Jean-Philippe Lang -
r11718:86cfa025edc8
parent child
Show More
@@ -404,24 +404,6 class UserTest < ActiveSupport::TestCase
404 404 assert_not_nil u.errors[:mail_notification]
405 405 end
406 406
407 test "User#try_to_login should fall-back to case-insensitive if user login is not found as-typed" do
408 user = User.try_to_login("AdMin", "admin")
409 assert_kind_of User, user
410 assert_equal "admin", user.login
411 end
412
413 test "User#try_to_login should select the exact matching user first" do
414 case_sensitive_user = User.generate! do |user|
415 user.password = "admin123"
416 end
417 # bypass validations to make it appear like existing data
418 case_sensitive_user.update_attribute(:login, 'ADMIN')
419
420 user = User.try_to_login("ADMIN", "admin123")
421 assert_kind_of User, user
422 assert_equal "ADMIN", user.login
423 end
424
425 407 def test_password
426 408 user = User.try_to_login("admin", "admin")
427 409 assert_kind_of User, user
@@ -513,25 +495,48 class UserTest < ActiveSupport::TestCase
513 495 end
514 496 end
515 497
516 def test_lock
517 user = User.try_to_login("jsmith", "jsmith")
518 assert_equal @jsmith, user
498 test ".try_to_login with good credentials should return the user" do
499 user = User.try_to_login("admin", "admin")
500 assert_kind_of User, user
501 assert_equal "admin", user.login
502 end
519 503
504 test ".try_to_login with wrong credentials should return nil" do
505 assert_nil User.try_to_login("admin", "foo")
506 end
507
508 def test_try_to_login_with_locked_user_should_return_nil
520 509 @jsmith.status = User::STATUS_LOCKED
521 assert @jsmith.save
510 @jsmith.save!
522 511
523 512 user = User.try_to_login("jsmith", "jsmith")
524 513 assert_equal nil, user
525 514 end
526 515
527 test ".try_to_login with good credentials should return the user" do
528 user = User.try_to_login("admin", "admin")
516 def test_try_to_login_with_locked_user_and_not_active_only_should_return_user
517 @jsmith.status = User::STATUS_LOCKED
518 @jsmith.save!
519
520 user = User.try_to_login("jsmith", "jsmith", false)
521 assert_equal @jsmith, user
522 end
523
524 test ".try_to_login should fall-back to case-insensitive if user login is not found as-typed" do
525 user = User.try_to_login("AdMin", "admin")
529 526 assert_kind_of User, user
530 527 assert_equal "admin", user.login
531 528 end
532 529
533 test ".try_to_login with wrong credentials should return nil" do
534 assert_nil User.try_to_login("admin", "foo")
530 test ".try_to_login should select the exact matching user first" do
531 case_sensitive_user = User.generate! do |user|
532 user.password = "admin123"
533 end
534 # bypass validations to make it appear like existing data
535 case_sensitive_user.update_attribute(:login, 'ADMIN')
536
537 user = User.try_to_login("ADMIN", "admin123")
538 assert_kind_of User, user
539 assert_equal "ADMIN", user.login
535 540 end
536 541
537 542 if ldap_configured?
General Comments 0
You need to be logged in to leave comments. Login now