LOG.debug("Saved kycInfo in db: investorId: {}, kycUuid: {}, isKycComplete: {}", kycInfo.getInvestorId(), kycInfo.getKycUuid(), kycInfo.isKycComplete()); } catch (DataIntegrityViolationException e) { LOG.info("KycInfo for investor was already saved to database.", investorId);
@Test public void testFindOptionalByInvestorId() { KycInfo kycInfo = createKycInfo(1, false); kycInfoRepository.save(kycInfo); Optional<KycInfo> oKycInfo = kycInfoRepository.findOptionalByInvestorId(1); assertTrue(oKycInfo.isPresent()); assertEquals(1, (long)oKycInfo.get().getInvestorId()); }
@Test public void testFindOptionalByKycUuid() { KycInfo kycInfo = createKycInfo(1,false); KycInfo savedKycInfo = kycInfoRepository.save(kycInfo); Optional<KycInfo> oKycInfo = kycInfoRepository.findOptionalByKycUuid(savedKycInfo.getKycUuid()); assertTrue(oKycInfo.isPresent()); assertEquals(1, (long)oKycInfo.get().getInvestorId()); assertEquals(savedKycInfo.getKycUuid(), oKycInfo.get().getKycUuid()); }
@Test public void testSetNonexistentInvestorComplete() throws Exception { KycInfo testKycInfo = createKycInfo(true, 0, false); when(mockKycInfoService.getKycInfoByInvestorId(INVESTOR_ID)).thenThrow(new InvestorNotFoundException()); MvcResult result = mockMvc.perform(MockMvcRequestBuilders.post(KYC_INVESTOR_COMPLETE) .contentType(MediaType.APPLICATION_JSON)) .andExpect(status().isBadRequest()) .andDo(print()) .andReturn(); verify(mockKycInfoService, never()).setKycComplete(testKycInfo.getInvestorId(), true); assertThat(result.getResponse().getErrorMessage()).isEqualTo(NONEXISTENT_INVESTOR_REASON); }
@Test public void testSetExistingInvestorCompleteWhenKycAlreadyComplete() throws Exception { KycInfo testKycInfo = createKycInfo(true, 0,true); when(mockKycInfoService.getKycInfoByInvestorId(INVESTOR_ID)).thenReturn(testKycInfo); MvcResult result = mockMvc.perform(MockMvcRequestBuilders.post(KYC_INVESTOR_COMPLETE) .contentType(MediaType.APPLICATION_JSON)) .andExpect(status().isBadRequest()) .andDo(print()) .andReturn(); verify(mockKycInfoService, never()).setKycComplete(testKycInfo.getInvestorId(), true); }
@Test public void testSetExistingInvestorCompleteWhenKycIncomplete() throws Exception { KycInfo testKycInfo = createKycInfo(true, 0,false); when(mockKycInfoService.getKycInfoByInvestorId(INVESTOR_ID)).thenReturn(testKycInfo); MvcResult result = mockMvc.perform(MockMvcRequestBuilders.post(KYC_INVESTOR_COMPLETE) .contentType(MediaType.APPLICATION_JSON)) .andExpect(status().isOk()) .andDo(print()) .andReturn(); verify(mockKycInfoService).setKycComplete(testKycInfo.getInvestorId(), true); }
private void assertKycInfo(KycInfo kycInfo, long investorId, boolean isKycStartEmailSent, int noOfRemindersSent, boolean isKycComplete, URI kycUri) { assertEquals(investorId, (long) kycInfo.getInvestorId()); assertEquals(isKycStartEmailSent, kycInfo.isStartKycEmailSent()); assertEquals(noOfRemindersSent, (int) kycInfo.getNoOfRemindersSent()); assertEquals(isKycComplete, kycInfo.isKycComplete()); assertEquals(kycUri.toASCIIString(), kycInfo.getKycUri()); }