git-svn-id: http://locode01.ad.dom/svn/WEBMIP/trunk@3672 248e525c-4dfb-0310-94bc-949c084e9493
107 lines
4.9 KiB
Ruby
107 lines
4.9 KiB
Ruby
#---
|
||
#This unit test checks the bases screen.
|
||
#---
|
||
class Test_01_login_screen < Test::Unit::TestCase
|
||
#
|
||
#Test we can logon to the system using the webmip administrator user’s login credentials and check that
|
||
#all the columns required for the report appears with the button to create a new base record
|
||
#
|
||
def test_01_login_screen_appears
|
||
@@ie.goto(LOGIN)
|
||
#we'll need to login
|
||
assert(@@ie.text_field(:id,'P101_USERNAME').exists?,'Could not find P101_USERNAME field')
|
||
assert(@@ie.text_field(:id,'P101_PASSWORD').exists?,'Could not find P101_PASSWORD file upload field')
|
||
assert(@@ie.button(:value,'Login').exists?,'Could not find Login button')
|
||
assert(@@ie.button(:value,'New Password').exists?,'Could not find New Password button')
|
||
assert(@@ie.button(:value,'Forgotten Password').exists?,'Could not find Forgotten Password button')
|
||
end
|
||
|
||
def test_02_check_login_validation
|
||
#Test that a username must be given
|
||
@@ie.button(:value,'Login').click
|
||
@@ie.wait
|
||
assert(@@ie.contains_text('Value must be specified.'),'Expected not null error on username.')
|
||
# test that a password must be given
|
||
@@ie.text_field(:id,'P101_USERNAME').set 'login_test'
|
||
@@ie.button(:value,'Login').click
|
||
@@ie.wait
|
||
assert(@@ie.contains_text('Value must be specified.'),'Expected not null error on password.')
|
||
# test that a valid user must be given
|
||
@@ie.text_field(:id,'P101_USERNAME').set 'not_a_user'
|
||
@@ie.text_field(:id,'P101_PASSWORD').set 'password'
|
||
@@ie.button(:value,'Login').click
|
||
@@ie.wait
|
||
assert(@@ie.contains_text('Invalid username/password specified.'),'User specified does not exist in the system.')
|
||
# test that a valid password must be given
|
||
@@ie.text_field(:id,'P101_USERNAME').set 'login_test'
|
||
@@ie.text_field(:id,'P101_PASSWORD').set 'incorrect'
|
||
@@ie.button(:value,'Login').click
|
||
@@ie.wait
|
||
assert(@@ie.contains_text('Invalid Login Credentials'),'Valid password error message incorrect.')
|
||
#@@ie.close
|
||
end
|
||
|
||
def test_03_open_user
|
||
#tests that a correct username and password for an "OPEN" user is accepted and the user is redirected correctly
|
||
@@ie.goto(LOGIN)
|
||
@@ie.text_field(:id,'P101_USERNAME').set 'login_test'
|
||
@@ie.text_field(:id,'P101_PASSWORD').set 'password'
|
||
@@ie.button(:value,'Login').click
|
||
@@ie.wait
|
||
assert(@@ie.contains_text('Search Enquiries'),'User specified does not exist in the system.')
|
||
#@@ie.close
|
||
end
|
||
|
||
def test_04_expired_password
|
||
#tests that a correct username and password for an "EXPIRED" user is accepted and the user is redirected correctly
|
||
@@ie.goto(LOGIN)
|
||
@@ie.text_field(:id,'P101_USERNAME').set 'expired_user'
|
||
@@ie.text_field(:id,'P101_PASSWORD').set 'password'
|
||
@@ie.button(:value,'Login').click
|
||
@@ie.wait
|
||
assert(@@ie.contains_text('Change Password'),'Expired user account not redirected correctly during logon.')
|
||
#@@ie.close
|
||
end
|
||
|
||
def test_05_locked_account
|
||
#tests that a correct username and password for an "LOCKED" user is accepted and the user is redirected correctly
|
||
@@ie.goto(LOGIN)
|
||
@@ie.text_field(:id,'P101_USERNAME').set 'locked_user'
|
||
@@ie.text_field(:id,'P101_PASSWORD').set 'password'
|
||
@@ie.button(:value,'Login').click
|
||
@@ie.wait
|
||
assert(@@ie.contains_text('The user account specified is locked. Please contact the system administrator.'),'Locked user account not redirected correctly during logon.')
|
||
#ie.close
|
||
end
|
||
|
||
def test_06_expired_account_password_change
|
||
#tests that a correct username and password for an "EXPIRED" user is accepted and the user is redirected correctly
|
||
@@ie.goto(LOGIN)
|
||
@@ie.text_field(:id,'P101_USERNAME').set 'expired_user'
|
||
@@ie.text_field(:id,'P101_PASSWORD').set 'password'
|
||
@@ie.button(:value,'Login').click
|
||
@@ie.wait
|
||
#confirm we're at the right page
|
||
assert(@@ie.contains_text('Change Password'),'Expired user account not redirected correctly during logon.')
|
||
#fill in some new password details - make sure that we follow security protocol for passwords...
|
||
@@ie.text_field(:id,'P102_NEW_PASSWORD').set 'P4ssw0rd.'
|
||
@@ie.text_field(:id,'P102_REPEAT_PASSWORD').set 'P4ssw0rd.'
|
||
@@ie.button(:value,'Change Password').click
|
||
@@ie.wait
|
||
#confirm the password was updated correctly
|
||
assert(@@ie.contains_text('Password updated.'),'Password not updated.')
|
||
#now log back in with the new password
|
||
@@ie.button(:value,'Login').click
|
||
@@ie.wait
|
||
assert(@@ie.button(:value,'Login').exists?,'Not navigated back to login page.')
|
||
@@ie.text_field(:id,'P101_USERNAME').set 'expired_user'
|
||
@@ie.text_field(:id,'P101_PASSWORD').set 'P4ssw0rd.'
|
||
@@ie.button(:value,'Login').click
|
||
@@ie.wait
|
||
#confirm we're at the right page
|
||
assert(@@ie.contains_text('Search Enquiries'),'Unsuccessful attempt at login.')
|
||
end
|
||
|
||
##close IE if still open
|
||
#@@ie.close
|
||
end |