mirror of
https://github.com/Bubka/2FAuth.git
synced 2024-11-28 19:23:11 +01:00
116 lines
3.8 KiB
Plaintext
116 lines
3.8 KiB
Plaintext
*** Settings ***
|
|
Documentation A page object to use in Accounts tests.
|
|
...
|
|
Library SeleniumLibrary
|
|
Library Collections
|
|
Resource start_page.robot
|
|
Resource ../common.resource
|
|
|
|
*** Variables ***
|
|
${ACCOUNTS PAGE URL} ${ROOT URL}/accounts
|
|
|
|
${GROUP SWITCH} groupSwitch
|
|
${SEARCH FIELD} txtSearch
|
|
${GRID CLASS} tfa-grid
|
|
${LIST CLASS} tfa-list
|
|
${ACCOUNTS CONTAINER} css:.accounts > span
|
|
${2FA ACCOUNT} class:tfa-cell
|
|
${MODAL OTP} class:modal-otp
|
|
${ALWAYS ON OTP} class:always-on-otp
|
|
${SHOW GROUP SWITCH BUTTON} btnShowGroupSwitch
|
|
${HIDE GROUP SWITCH BUTTON} btnHideGroupSwitch
|
|
${MANAGE BUTTON} btnManage
|
|
${SELECT ALL BUTTON} btnSelectAll
|
|
${UNSELECT ALL BUTTON} btnUnselectAll
|
|
${MOVE BUTTON} btnMove
|
|
${DELETE BUTTON} btnDelete
|
|
${EXPORT BUTTON} btnExport
|
|
|
|
*** Keywords ***
|
|
Go To Accounts Page
|
|
Go Authenticated To ${ACCOUNTS PAGE URL}
|
|
|
|
Wait Until Accounts Are Loaded
|
|
Wait Until Page Contains Element class:accounts
|
|
|
|
Show An Otp In Modal
|
|
Wait Until Page Contains Element ${2FA ACCOUNT}
|
|
${account} = Get WebElement ${2FA ACCOUNT}:first-child
|
|
Click Element ${account}
|
|
Wait Until Element Is Visible ${OTP}
|
|
|
|
Get Visible TwoFAccounts Elements
|
|
Wait Until Page Contains Element ${ACCOUNTS CONTAINER}
|
|
@{twofaccounts} = Get WebElements ${ACCOUNTS CONTAINER} > div
|
|
[return] @{twofaccounts}
|
|
|
|
Get OTP Value Shown In Modal
|
|
${string}= Get Text ${OTP}
|
|
[return] ${string}
|
|
|
|
Get OTP Values Shown On Home
|
|
Wait Until Page Contains Element ${ALWAYS ON OTP}
|
|
@{elements}= Get WebElements ${ALWAYS ON OTP}
|
|
${otps} = Create List
|
|
FOR ${element} IN @{elements}
|
|
${otp} = Get Text ${element}
|
|
Append To List ${otps} ${otp}
|
|
END
|
|
[return] @{otps}
|
|
|
|
Show Group Switch
|
|
Wait Until Page Contains Element ${SHOW GROUP SWITCH BUTTON}
|
|
Click Element ${SHOW GROUP SWITCH BUTTON}
|
|
Wait Until Page Contains Element ${GROUP SWITCH}
|
|
|
|
Hide Group Switch
|
|
Click Element ${HIDE GROUP SWITCH BUTTON}
|
|
Wait Until Page Does Not Contain Element ${GROUP SWITCH}
|
|
|
|
Click Otp In Modal To Copy It
|
|
Click Element ${OTP}
|
|
|
|
Click Otp On Home To Copy It
|
|
Wait Until Page Contains Element ${ALWAYS ON OTP}
|
|
${otp element} = Get WebElement ${ALWAYS ON OTP}:first-child
|
|
Click Element ${otp element}
|
|
|
|
Clipboard Should Contain
|
|
[Arguments] ${expected}
|
|
Close Modal Otp
|
|
Wait Until Element Is Visible ${SEARCH FIELD}
|
|
Set Focus To Element ${SEARCH FIELD}
|
|
Press Keys None CTRL+v
|
|
${clipboard} = Get Value ${SEARCH FIELD}
|
|
Should Be Equal ${expected} ${clipboard}
|
|
Input Text ${SEARCH FIELD} ${CLEARED CLIPBOARD VALUE}
|
|
Press Keys ${SEARCH FIELD} CTRL+c
|
|
Clear Search
|
|
|
|
Clear Search
|
|
Run Keyword And Ignore Error Click Element btnClearSearch
|
|
|
|
Copy To Clipboard
|
|
[Arguments] ${string}
|
|
Close Modal Otp
|
|
Wait Until Element Is Visible ${SEARCH FIELD}
|
|
Input Text ${SEARCH FIELD} ${string}
|
|
Set Focus To Element ${SEARCH FIELD}
|
|
Press Keys None CTRL+a
|
|
Press Keys None CTRL+c
|
|
Clear Search
|
|
|
|
Close Modal Otp
|
|
${modal is open} = Run Keyword And Return Status Element Should Be Visible ${MODAL OTP}
|
|
Run Keyword If ${modal is open} Click Element ${CLOSE BUTTON}
|
|
Wait Until Element Is Not Visible ${MODAL OTP}
|
|
|
|
Delete All TwoFAccounts
|
|
Wait Until Page Contains Element ${MANAGE BUTTON}
|
|
Click Element ${MANAGE BUTTON}
|
|
Wait Until Page Contains Element ${SELECT ALL BUTTON}
|
|
Click Element ${SELECT ALL BUTTON}
|
|
Wait Until Element Is Enabled ${DELETE BUTTON}
|
|
Click Element ${DELETE BUTTON}
|
|
Handle Alert
|
|
Wait Until Location Is ${START PAGE URL} |