in component-test/src/main/java/org/apache/fineract/cn/deposit/DepositApiDocumentation.java [530:558]
public void documentFetchInstances ( ) throws Exception {
final ProductDefinition productDefinition = Fixture.productDefinition();
super.depositAccountManager.create(productDefinition);
super.eventRecorder.wait(EventConstants.POST_PRODUCT_DEFINITION, productDefinition.getIdentifier());
final ProductInstance productInstance = Fixture.productInstance(productDefinition.getIdentifier());
super.depositAccountManager.create(productInstance);
super.eventRecorder.wait(EventConstants.POST_PRODUCT_INSTANCE, productInstance.getCustomerIdentifier());
this.mockMvc.perform(get("/instances")
.param("customer", productInstance.getCustomerIdentifier())
.contentType(MediaType.ALL_VALUE)
.accept(MediaType.APPLICATION_JSON_VALUE))
.andExpect(status().isOk())
.andDo(document("document-fetch-instances", preprocessResponse(prettyPrint()),
responseFields(
fieldWithPath("[].customerIdentifier").description("Customer Identifier"),
fieldWithPath("[].productIdentifier").description("Product identifier"),
fieldWithPath("[].accountIdentifier").description("Account Identifier"),
fieldWithPath("[].alternativeAccountNumber").type("String").description("Alternative account Number"),
fieldWithPath("[].beneficiaries").type("Set<String>").description("Set of beneficiaries"),
fieldWithPath("[].openedOn").type("String").description("Date product instance was opened"),
fieldWithPath("[].state").description("State of product"),
fieldWithPath("[].balance").type("Double").description("balance"),
fieldWithPath("[].lastTransactionDate").type("String").description("Last Transaction Date")
)));
}