@Test public void testDoReadFirstReadNoResults() throws Exception { ArgumentCaptor<PageRequest> pageRequestContainer = ArgumentCaptor.forClass(PageRequest.class); when(repository.findAll(pageRequestContainer.capture())).thenReturn(new PageImpl<>(new ArrayList<>())); assertNull(reader.doRead()); Pageable pageRequest = pageRequestContainer.getValue(); assertEquals(0, pageRequest.getOffset()); assertEquals(0, pageRequest.getPageNumber()); assertEquals(1, pageRequest.getPageSize()); assertEquals("id: ASC", pageRequest.getSort().toString()); }
@PostMapping(value = "/book/{id}") public Book publishBook(@PathVariable String id, @RequestBody Book book) { book.setId(id); book.setPublishedDate(new Date(System.currentTimeMillis())); bookRepository.save(book); return book; }
/** * {@inheritDoc} */ @Override public T findById(ID id) { Assert.notNull(id, "Resource ID can't be null"); return repository.findOne(id); }
/** * {@inheritDoc} */ @Override @Transactional public void delete(ID id) { Assert.notNull(id, "Resource ID can't be null"); repository.delete(id); }
/** * {@inheritDoc} */ @Override public Long count() { return repository.count(); } }
/** * {@inheritDoc} */ @Override @Transactional public void deleteAll() { repository.deleteAll(); }
/** * {@inheritDoc} */ @Override public T findById(@PathVariable ID id) { T entity = (T)this.repository.findOne(id); if (entity == null) { throw new NotFoundException(); } return entity; }
/** * {@inheritDoc} */ @Override @Transactional public void delete(T resource) { Assert.notNull(resource, "Resource can't be null"); repository.delete(resource); }
@Test @SuppressWarnings("serial") public void testDoReadFirstReadExhausted() throws Exception { ArgumentCaptor<PageRequest> pageRequestContainer = ArgumentCaptor.forClass(PageRequest.class); final Object result = new Object(); when(repository.findAll(pageRequestContainer.capture())).thenReturn(new PageImpl<>(new ArrayList<Object>() {{ add(new Object()); }})).thenReturn(new PageImpl<>(new ArrayList<Object>(){{ add(result); }})).thenReturn(new PageImpl<>(new ArrayList<>())); assertFalse(reader.doRead() == result); assertEquals(result, reader.doRead()); assertNull(reader.doRead()); Pageable pageRequest = pageRequestContainer.getValue(); assertEquals(2, pageRequest.getOffset()); assertEquals(2, pageRequest.getPageNumber()); assertEquals(1, pageRequest.getPageSize()); assertEquals("id: ASC", pageRequest.getSort().toString()); }
@Override public void save(EventEntity entity) { repository.save(entity); } }
@Override public Optional<DeployKey> byId(String id, boolean full) { return ofNullable(this.repository.findOne(id)).map(it -> of(it.externalForm())).orElse(empty()) .flatMap(dk -> fun.apply(dk, full)); }
/** * {@inheritDoc} */ @Override public void delete(@PathVariable ID id) { T resource = this.findById(id); this.repository.delete(resource); }
@Test @SuppressWarnings("serial") public void testDoReadFirstReadSecondPage() throws Exception { ArgumentCaptor<PageRequest> pageRequestContainer = ArgumentCaptor.forClass(PageRequest.class); final Object result = new Object(); when(repository.findAll(pageRequestContainer.capture())).thenReturn(new PageImpl<>(new ArrayList<Object>() {{ add(new Object()); }})).thenReturn(new PageImpl<>(new ArrayList<Object>(){{ add(result); }})); assertFalse(reader.doRead() == result); assertEquals(result, reader.doRead()); Pageable pageRequest = pageRequestContainer.getValue(); assertEquals(1, pageRequest.getOffset()); assertEquals(1, pageRequest.getPageNumber()); assertEquals(1, pageRequest.getPageSize()); assertEquals("id: ASC", pageRequest.getSort().toString()); }
/** * {@inheritDoc} */ @Override public T create(@RequestBody T resource) { return (T)this.repository.save(resource); }
@Test @SuppressWarnings("serial") public void testJumpToItem() throws Exception { reader.setPageSize(100); ArgumentCaptor<PageRequest> pageRequestContainer = ArgumentCaptor.forClass(PageRequest.class); when(repository.findAll(pageRequestContainer.capture())).thenReturn(new PageImpl<>(new ArrayList<Object>() {{ add(new Object()); }})); reader.jumpToItem(485); Pageable pageRequest = pageRequestContainer.getValue(); assertEquals(400, pageRequest.getOffset()); assertEquals(4, pageRequest.getPageNumber()); assertEquals(100, pageRequest.getPageSize()); assertEquals("id: ASC", pageRequest.getSort().toString()); }
/** * {@inheritDoc} */ @Override @Transactional public T update(T resource) { Assert.notNull(resource, "Resource can't be null"); return repository.save(resource); }
@Test @SuppressWarnings("serial") public void testDoReadFirstReadResults() throws Exception { ArgumentCaptor<PageRequest> pageRequestContainer = ArgumentCaptor.forClass(PageRequest.class); final Object result = new Object(); when(repository.findAll(pageRequestContainer.capture())).thenReturn(new PageImpl<>(new ArrayList<Object>(){{ add(result); }})); assertEquals(result, reader.doRead()); Pageable pageRequest = pageRequestContainer.getValue(); assertEquals(0, pageRequest.getOffset()); assertEquals(0, pageRequest.getPageNumber()); assertEquals(1, pageRequest.getPageSize()); assertEquals("id: ASC", pageRequest.getSort().toString()); }
/** * {@inheritDoc} */ @Override @Transactional public T create(T resource) { Assert.notNull(resource, "Resource can't be null"); return repository.save(resource); }