SeedData
open /mifos/loginAction.do?method=logout
assertTextPresent successfully logged out
type userName mifos
type password testmifos
clickAndWait //input[@value='Login']
assertTextPresent Welcome,  mifos
clickAndWait link=Admin
assertTextPresent Welcome to mifos administrative area
clickAndWait link=Define new Loan product
assertTextPresent Add a new Loan product.
assertTextPresent Enter Loan product information.
storeExpression javascript{'MyLoanProduct' + (new Date()).getTime()} randomLoanProductName
type prdOfferingName ${randomLoanProductName}
storeExpression javascript{storedVars['randomLoanProductName'].substring(22,26)} randomShortLoanProductName
type prdOfferingShortName ${randomShortLoanProductName}
type description auto-generated randomly-named loan product
select prdCategory label=Other
select prdApplicableMaster label=Clients
type minLoanAmount 100
type maxLoanAmount 10000
type defaultLoanAmount 2000
select interestTypes label=Flat
type maxInterestRate 30
type minInterestRate 3
type defInterestRate 3
click freqOfInstallments
type maxNoInstallments 1000
type defNoInstallments 11
select interestGLCode label=31101
select principalGLCode label=1503
clickAndWait //input[@value='Preview']
assertTextPresent Add a new Loan product.
assertTextPresent Review & submit
assertTextPresent Product instance name: ${randomLoanProductName}
assertTextPresent Short name: ${randomShortLoanProductName}
clickAndWait submitBut
clickAndWait link=View Loan product details now.
assertTextPresent ${randomLoanProductName}
clickAndWait link=Admin
assertTextPresent Administrative tasks
clickAndWait link=Define a new office
assertTextPresent Add a new offic
assertTextPresent Enter office information
storeExpression javascript{'MyOffice' + (new Date()).getTime()} randomOfficeName
type officeName ${randomOfficeName}
storeExpression javascript{storedVars['randomOfficeName'].substring(17,21)} randomShortOfficeName
type shortName ${randomShortOfficeName}
selectAndWait officeLevel label=Branch Office
select parentOfficeId label=regexp:Mifos\s+HO
clickAndWait //input[@value='Preview']
assertTextPresent Add a new office
assertTextPresent Review & submit
assertTextPresent Office name: ${randomOfficeName}
assertTextPresent Office short name: ${randomShortOfficeName}
assertTextPresent Office type: Branch Office
assertTextPresent regexp:Parent office:.*Head Office
clickAndWait //input[@value='Submit']
assertTextPresent You have successfully added a new office
clickAndWait link=View office details now
assertTextPresent ${randomOfficeName}
clickAndWait link=Admin
assertTextPresent Administrative tasks
clickAndWait link=Define new system user
assertTextPresent Add a new user
assertTextPresent Choose office
clickAndWait link=${randomOfficeName}
assertTextPresent Add a new user
assertTextPresent Enter user information
storeExpression javascript{new Date().getTime()} randomNum
type firstName Joe${randomNum}
type lastName Guy${randomNum}
type emailId joe+${randomNum}@example.com
type dobDD 02
type dobMM 05
type dobYY 1938
select gender label=Male
select level label=Loan Officer
type loginName joe${randomNum}
type userPassword 12345678
type passwordRepeat 12345678
storeExpression Joe${randomNum} Guy${randomNum} loanOfficerFullname
clickAndWait //input[@value='Preview']
assertTextPresent Add a new user
assertTextPresent Review & Submit
assertTextPresent Joe${randomNum}
clickAndWait submitBtn
assertTextPresent You have successfully added a new user
clickAndWait link=View user details now
assertTextPresent Joe${randomNum}
clickAndWait link=Clients & Accounts
assertTextPresent To review or edit a Client, Group, or account
clickAndWait link=Create new Center
assertTextPresent Create a new Center
assertTextPresent Choose Branch Office
clickAndWait link=${randomOfficeName}
assertTextPresent Create New Center
assertTextPresent Enter Center information
storeExpression javascript{'MyCenter' + (new Date()).getTime()} randomCenterName
type displayName ${randomCenterName}
select loanOfficerId label=${loanOfficerFullname}
clickAndWait link=Schedule Meeting
assertTextPresent Meeting schedule for Center
type recurWeek 1
storeExpression javascript{new Date().getDay() + 1} todayDay
select weekDay value=${todayDay}
type meetingPlace Wherever
clickAndWait //input[@value='Save']
assertTextPresent Create New Center
assertTextPresent Enter Center information
clickAndWait //input[@value='Preview']
assertTextPresent Create a new Center
assertTextPresent Review & submit
assertTextPresent ${randomCenterName}
clickAndWait submitButton
assertTextPresent You have successfully created a new Center
assertTextPresent ${randomCenterName}
clickAndWait link=View Center details now
assertTextPresent ${randomCenterName}
clickAndWait link=Add Group
assertTextPresent Create new Group
assertTextPresent Enter Group information
storeExpression javascript{'MyGroup' + (new Date()).getTime()} randomGroupName
type displayName ${randomGroupName}
select formedByPersonnel label=${loanOfficerFullname}
clickAndWait //input[@value='Preview']
assertTextPresent Create new Group
assertTextPresent Review & submit
assertTextPresent ${randomGroupName}
clickAndWait submitBtn2
assertTextPresent You have successfully created a new Group
assertTextPresent ${randomGroupName}
clickAndWait link=View Group details now
assertTextPresent ${randomGroupName}
assertTextPresent Application Pending Approval
clickAndWait link=Edit Group status
assertTextPresent ${randomGroupName}
assertTextPresent Change status
assertTextPresent Application Pending Approval
click document.editCustomerStatusActionForm.newStatusId[1]
type notes good to go.
clickAndWait //input[@value='Preview']
assertTextPresent ${randomGroupName}
assertTextPresent Confirm status change
assertTextPresent Active
clickAndWait btn
assertTextPresent Active
clickAndWait link=Add Client
assertTextPresent Create new Client
assertTextPresent Enter personal information
storeExpression javascript{new Date().getTime()} randomNum2
select clientName.salutation label=Mr
type clientName.firstName Stu${randomNum2}
type clientName.lastName Client${randomNum2}
type dateOfBirthDD 03
type dateOfBirthMM 07
type dateOfBirthYY 1949
select clientDetailView.gender label=Male
select clientDetailView.povertyStatus label=Very poor
select spouseName.nameType label=Spouse
type spouseName.firstName Sis${randomNum2}
type spouseName.lastName Last${randomNum2}
clickAndWait //input[@value='Continue']
select formedByPersonnel label=${loanOfficerFullname}
clickAndWait //input[@value='Preview']
assertTextPresent Create new Client
assertTextPresent Review & submit
clickAndWait submitButton
assertTextPresent You have successfully created a new Client
clickAndWait link=View Client details now
assertTextPresent Application Pending Approval
clickAndWait link=Edit Client status
assertTextPresent Change status
assertTextPresent Application Pending Approval
click document.editCustomerStatusActionForm.newStatusId[1]
type notes ready and set.
clickAndWait //input[@value='Preview']
assertTextPresent Confirm status change
assertTextPresent Active
clickAndWait btn
clickAndWait link=Loan
assertTextPresent Create Loan account
assertTextPresent Enter Loan account information
select prdOfferingId label=${randomLoanProductName}
clickAndWait continueBtn
assertTextPresent Create Loan account
assertTextPresent Enter Loan account information
clickAndWait continueButton
assertTextPresent Create Loan account
assertTextPresent Review installments
clickAndWait previewBtn
assertTextPresent Create Loan account
assertTextPresent Preview Loan account information
clickAndWait submitForApprovalButton
assertTextPresent You have successfully created a new Loan account
clickAndWait link=View Loan account details now
assertTextPresent ${randomLoanProductName} #
assertTextPresent Application Pending Approval
clickAndWait link=Edit account status
assertTextPresent Change status
assertTextPresent Application Pending Approval
click document.editStatusActionForm.newStatusId[1]
type notes great, go for it.
clickAndWait //input[@value='Preview']
assertTextPresent Confirm status change
assertTextPresent Application Approved
clickAndWait btn
assertTextPresent Application Approved