@Test public void testConfiguration() throws Exception { JpaItemWriter<String> itemWriter = new JpaItemWriterBuilder<String>() .entityManagerFactory(this.entityManagerFactory) .build(); itemWriter.afterPropertiesSet(); List<String> items = Arrays.asList("foo", "bar"); itemWriter.write(items); verify(this.entityManager).merge(items.get(0)); verify(this.entityManager).merge(items.get(1)); }
@Test public void testAfterPropertiesSet() throws Exception { writer = new JpaItemWriter<>(); try { writer.afterPropertiesSet(); fail("Expected IllegalArgumentException"); } catch (IllegalArgumentException e) { // expected assertTrue("Wrong message for exception: " + e.getMessage(), e.getMessage().indexOf("EntityManagerFactory") >= 0); } }