Customer Testing
ConfigurationContents::
Client Rules
ClientRules.CenterHierarchyExists: true
ProcessFlow Rules
ProcessFlow.ClientPendingApprovalStateEnabled: falseProcessFlow.GroupPendingApprovalStateEnabled: falseProcessFlow.LoanPendingApprovalStateEnabled: falseProcessFlow.SavingsPendingApprovalStateEnabled: false
Exploratory High Value UI Driven Test (Manual or through Selenium)
Create a Dataset with the following:
at least one branch level office
at least one active loan officer associated with branch level office
at least one 'additional' mandatory field associated with center (from admin)
at least one configurable field as mandatory (externalId) (from admin)
at least one one-time fee applicable to centers
at least one of each period type of period fees (weekly, monthly)
handle success case of:
Creating a center with all mandatory fields filled in along with optional fields (address, externalId, fees)
Automated Tests
Center Creation
cannot create center with blank name
cannot create center without assigned loan officer
cannot create center without meeting
cannot create center without mfi joining date
cannot create center without a branch/office
cannot create center with fee that does not match meeting period (weeekly/monthly)
cannot create center with multiple instances of same periodic fee
cannot create center with mandatory additional fields not populated
can create center with minimal details (name, loan officer, meeting, MFI joining date(today), no address, no externalId, no fees)
can create center with mfi joining date can be in the past
can create center with mfi joining date can be in the future
can create center with address
can create center with externalId
can create center with fee (that matches meeting period)
can create center with with multiple instances of the same one-time fee
can create center with name of already existing center (QUESTION: Is this expected?)
can create center with an externalId that already exists for another center (QUESTION: Is this expected?)
created by and created date details are stored on creation
center goes into active state by default
when center goes active for first time, customer activation date is populated with date
when center is created, max child count is zero
NOTE: see CenterCreationTest.java_NOTE:_ see CenterCreationUsingCustomerServiceIntegrationTest.java
Center Update (Edit Center Details)
cannot update center without mfi joining date
cannot update center with mandatory additional fields not populated
can update center with different loan officer
NOTE: updating Center With Different LoanOfficer Updates All Children In Hierarchy Including Their Associated Loans Savings And CustomerAccounts
can update center with different mfi joing date in past or future
can update center with different details for optional fields (externalId, address, telephone)
can update center with clients of center assigned to customer positions.
update by and updated date details are stored on update
Center Update (Edit Meeting Schedule)
can edit meeting schedule for center which stored new meeting details to be picked up by batch jobs overnight.
Given center is active
cannot update center with no assigned loan officer
Given center is inactive
cannot transition to active state when no loan officer is assigned
can update center with no assigned loan officer
NOTE: see CenterUpdateTest.java_NOTE:_ see CenterUpdateUsingCustomerServiceIntegrationTest.java_NOTE:_ see CenterHierarchyCustomerServiceIntegrationTest.java
Audit Logging (Change Logs)
is tracked for changes to
center status
assigned loan officer
Group Creation (in a Center Hierarchy)
cannot create group with blank name
cannot create group without formed by personnel assigned
cannot create group without assigned loan officer
cannot create group without meeting
cannot create group without a branch/office
cannot create group without a parent center
cannot create group with name that already exists for given branch/office
cannot create group with fee that does not match meeting period (weeekly/monthly)
cannot create group with multiple instances of same periodic fee
cannot create group with mandatory additional fields not populated
can create group with minimal details (name, loan officer, meeting, no address, no externalId, no fees)
can create group with address
can create group with externalId
can create group with fee (that matches meeting period)
can create group with with multiple instances of the same one-time fee
can create group with an externalId that already exists for another group (QUESTION: Is this expected?)
TO BE DONE
for center creation and update
Automate as UI tests
center with one (or more) field configurations set as mandatory
center with one (or more) hidden field configurations
NOTE: (for center use externalId or address.line1 etc)
Automate as integrated testscenter with one (or more) mandatory additional fields
center with one (or more) non-mandatory additional fields