@RequestMapping(value = "/whitelist/subscribe", method = POST, consumes = APPLICATION_JSON_UTF8_VALUE, produces = APPLICATION_JSON_UTF8_VALUE) public ResponseEntity<?> saveWhiteListEmail(@Valid @RequestBody WhitelistEmailRequest whitelistEmailRequest) throws BaseException { try { WhitelistEmail whitelistEmail = this.whitelistEmailService.saveWhiteListEmail(whitelistEmailRequest.getEmail()); return new ResponseEntity<>(new WhitelistEmailResponse(whitelistEmail.getEmail(), whitelistEmail.getSubscriptionDate()), HttpStatus.OK); } catch (WhitelistEmailNotSavedException e) { throw new UnexpectedException(); } }
@Test public void testSaveAndFind() { Date now = Date.from(Instant.now()); WhitelistEmail wTest1 = new WhitelistEmail("test@test.com", now); WhitelistEmail wTestSaved1 = whitelistEmailRepository.saveAndFlush(wTest1); WhitelistEmail wTest2 = new WhitelistEmail("test2@test.com", now); WhitelistEmail wTestSaved2 = whitelistEmailRepository.saveAndFlush(wTest2); assertNotNull(wTestSaved1.getEmail()); assertNotNull(wTestSaved1.getSubscriptionDate()); assertEquals(wTestSaved1.getSubscriptionDate(), now); assertNotNull(wTestSaved2.getEmail()); assertNotNull(wTestSaved2.getSubscriptionDate()); assertEquals(wTestSaved2.getSubscriptionDate(), now); Optional<WhitelistEmail> oWTestFound1 = whitelistEmailRepository.findByEmail("test@test.com"); assertTrue(oWTestFound1.isPresent()); Optional<WhitelistEmail> oWTestFound2 = whitelistEmailRepository.findByEmail("test2@test.com"); assertTrue(oWTestFound2.isPresent()); List<WhitelistEmail> allEmails = whitelistEmailRepository.findAll(); assertEquals(2, allEmails.size()); }