mirror of
https://github.com/Bubka/2FAuth.git
synced 2024-11-30 12:13:32 +01:00
106 lines
3.6 KiB
Plaintext
106 lines
3.6 KiB
Plaintext
*** Settings ***
|
|
Documentation A page object to use in 2FA accounts creation tests.
|
|
...
|
|
Library SeleniumLibrary
|
|
Resource ../common.resource
|
|
|
|
*** Variables ***
|
|
${CREATE ACCOUNT PAGE URL} ${ROOT URL}/account/create
|
|
|
|
${SERVICE FIELD} txtService
|
|
${ACCOUNT FIELD} txtAccount
|
|
${SECRET FIELD} txtSecret
|
|
${PERIOD FIELD} txtPeriod
|
|
${COUNTER FIELD} txtCounter
|
|
${TOTP TOGGLE BUTTON} btnOtp_typetotp
|
|
${HOTP TOGGLE BUTTON} btnOtp_typehotp
|
|
${STEAM TOGGLE BUTTON} btnOtp_typesteamtotp
|
|
${DIGITS BUTTON PREFIX} btnDigits
|
|
${6 DIGITS BUTTON} btnDigits6
|
|
${7 DIGITS BUTTON} btnDigits7
|
|
${8 DIGITS BUTTON} btnDigits8
|
|
${9 DIGITS BUTTON} btnDigits9
|
|
${10 DIGITS BUTTON} btnDigits10
|
|
${ALGORITHM BUTTON PREFIX} btnAlgorithm
|
|
${SHA1} sha1
|
|
${SHA256} sha256
|
|
${SHA512} sha512
|
|
${SMD5} md5
|
|
${CREATE BUTTON} btnCreate
|
|
${PREVIEW BUTTON} btnPreview
|
|
|
|
*** Keywords ***
|
|
Create TwoFAccount Page Should Be Open
|
|
Location Should Be ${CREATE ACCOUNT PAGE URL}
|
|
|
|
Go To Create TwoFAccount Page
|
|
Go Authenticated To ${CREATE ACCOUNT PAGE URL}
|
|
Set Footer As Static
|
|
|
|
Create TOTP TwoFAccount
|
|
[Arguments] ${service} ${account} ${secret}=XXXXXXXX ${digits}=6 ${algorithm}=${SHA1} ${period}=30
|
|
Go To Create TwoFAccount Page
|
|
Select TOTP Type
|
|
Fill Period Field ${period}
|
|
Create OTP TwoFAccount ${service} ${account} ${secret} ${digits} ${algorithm}
|
|
&{otp data} = Create Dictionary type=TOTP service=${service} account=${account} secret=${secret} digits=${digits} algorithm=${algorithm} period=${period}
|
|
RETURN &{otp data}
|
|
|
|
Create HOTP TwoFAccount
|
|
[Arguments] ${service} ${account} ${secret}=XXXXXXXX ${digits}=6 ${algorithm}=${SHA1} ${counter}=1
|
|
Go To Create TwoFAccount Page
|
|
Select HOTP Type
|
|
Fill Counter Field ${counter}
|
|
Create OTP TwoFAccount ${service} ${account} ${secret} ${digits} ${algorithm}
|
|
&{otp data} = Create Dictionary type=HOTP service=${service} account=${account} secret=${secret} digits=${digits} algorithm=${algorithm} period=${counter}
|
|
RETURN &{otp data}
|
|
|
|
Create OTP TwoFAccount
|
|
[Arguments] ${service} ${account} ${secret}=XXXXXXXX ${digits}=6 ${algorithm}=${SHA1}
|
|
Fill Service Field ${service}
|
|
Fill Account Field ${account}
|
|
Fill Secret Field ${secret}
|
|
Set Digits To ${digits}
|
|
Set Algorithm To ${algorithm}
|
|
Click Element ${CREATE BUTTON}
|
|
Wait Until Location Is ${ACCOUNTS PAGE URL} 10s
|
|
|
|
*** Keywords ***
|
|
Fill Service Field
|
|
[Arguments] ${service}
|
|
Input Text ${SERVICE FIELD} ${service}
|
|
|
|
Fill Account Field
|
|
[Arguments] ${account}
|
|
Input Text ${ACCOUNT FIELD} ${account}
|
|
|
|
Select TOTP Type
|
|
Click Element ${TOTP TOGGLE BUTTON}
|
|
|
|
Select HOTP Type
|
|
Click Element ${HOTP TOGGLE BUTTON}
|
|
|
|
Select STEAM Type
|
|
Click Element ${STEAM TOGGLE BUTTON}
|
|
|
|
Fill Secret Field
|
|
[Arguments] ${secret}
|
|
Input Text ${SECRET FIELD} ${secret}
|
|
|
|
Fill Period Field
|
|
Wait Until Page Contains Element ${PERIOD FIELD}
|
|
[Arguments] ${period}=30
|
|
Input Text ${PERIOD FIELD} ${period}
|
|
|
|
Fill Counter Field
|
|
Wait Until Page Contains Element ${COUNTER FIELD}
|
|
[Arguments] ${counter}=1
|
|
Input Text ${COUNTER FIELD} ${counter}
|
|
|
|
Set Digits To
|
|
[Arguments] ${digits}
|
|
Click Element ${DIGITS BUTTON PREFIX}${digits}
|
|
|
|
Set Algorithm To
|
|
[Arguments] ${algorithm}
|
|
Click Element ${ALGORITHM BUTTON PREFIX}${algorithm} |