@PostConstruct private void populateLibrary() { addBook(new Book("The Hobbit", "J. R. R. Tolkien", LocalDate.of(1937, 2, 21))); addBook(new Book("A Confederacy of Dunces", "John Kennedy Toole", LocalDate.of(1980, 4, 1))); addBook(new Book("A Game of Thrones (A Song of Ice and Fire)", "George R.R. Martin", LocalDate.of(1996, 1, 1))); }
public List<Book> findBooks(final Date from, final Date to) { Calendar end = Calendar.getInstance(); end.setTime(to); end.roll(Calendar.YEAR, 1); return store.stream().filter(book -> { return from.before(book.getPublished()) && end.getTime().after(book.getPublished()); }).sorted(Comparator.comparing(Book::getPublished).reversed()) .collect(Collectors.toList()); }
@Test void testGetBook() { ResponseEntity<Book> responseEntity = restTemplate .getForEntity("/book/0", Book.class); assertEquals(OK, responseEntity.getStatusCode()); assertEquals("The Hobbit", responseEntity.getBody().getName()); }
@Test void testGetBook() { ResponseEntity<Book> responseEntity = restTemplate .getForEntity("/book/0", Book.class); assertEquals(OK, responseEntity.getStatusCode()); assertEquals("The Hobbit", responseEntity.getBody().getName()); }
@Test void testPostBook() { Book book = new Book("I, Robot", "Isaac Asimov", LocalDate.of(1950, 12, 2)); ResponseEntity<Boolean> responseEntity = restTemplate .postForEntity("/book", book, Boolean.class); assertEquals(CREATED, responseEntity.getStatusCode()); assertEquals(true, responseEntity.getBody()); ResponseEntity<Book[]> responseEntity2 = restTemplate .getForEntity("/books", Book[].class); assertEquals(responseEntity2.getBody().length, 4); }
@Test void testPostBook() { Book book = new Book("I, Robot", "Isaac Asimov", LocalDate.of(1950, 12, 2)); ResponseEntity<Boolean> responseEntity = restTemplate .postForEntity("/book", book, Boolean.class); assertEquals(CREATED, responseEntity.getStatusCode()); assertEquals(true, responseEntity.getBody()); ResponseEntity<Book[]> responseEntity2 = restTemplate .getForEntity("/books", Book[].class); assertEquals(responseEntity2.getBody().length, 4); }