@Test public void testWriteNullSession() throws Exception { writer = new Neo4jItemWriter<>(); writer.setSessionFactory(this.sessionFactory); writer.afterPropertiesSet(); writer.write(null); verifyZeroInteractions(this.session); }
/** * Validates and builds a {@link org.springframework.batch.item.data.Neo4jItemWriter}. * * @return a {@link Neo4jItemWriter} */ public Neo4jItemWriter<T> build() { Assert.notNull(sessionFactory, "sessionFactory is required."); Neo4jItemWriter<T> writer = new Neo4jItemWriter<>(); writer.setDelete(this.delete); writer.setSessionFactory(this.sessionFactory); return writer; } }
@Test public void testAfterPropertiesSet() throws Exception{ writer = new Neo4jItemWriter<>(); try { writer.afterPropertiesSet(); fail("SessionFactory was not set but exception was not thrown."); } catch (IllegalStateException iae) { assertEquals("A SessionFactory is required", iae.getMessage()); } catch (Throwable t) { fail("Wrong exception was thrown."); } writer.setSessionFactory(this.sessionFactory); writer.afterPropertiesSet(); writer = new Neo4jItemWriter<>(); writer.setSessionFactory(this.sessionFactory); writer.afterPropertiesSet(); }
/** * Write all items to the data store. * * @see org.springframework.batch.item.ItemWriter#write(java.util.List) */ @Override public void write(List<? extends T> items) throws Exception { if(!CollectionUtils.isEmpty(items)) { doWrite(items); } }
@Test public void testBasicWriter() throws Exception{ Neo4jItemWriter<String> writer = new Neo4jItemWriterBuilder<String>().sessionFactory(this.sessionFactory).build(); List<String> items = new ArrayList<>(); items.add("foo"); items.add("bar"); when(this.sessionFactory.openSession()).thenReturn(this.session); writer.write(items); verify(this.session).save("foo"); verify(this.session).save("bar"); verify(this.session, never()).delete("foo"); verify(this.session, never()).delete("bar"); }
/** * Write all items to the data store. * * @see org.springframework.batch.item.ItemWriter#write(java.util.List) */ @Override public void write(List<? extends T> items) throws Exception { if(!CollectionUtils.isEmpty(items)) { doWrite(items); } }
@Test public void testBasicDelete() throws Exception{ Neo4jItemWriter<String> writer = new Neo4jItemWriterBuilder<String>().delete(true).sessionFactory(this.sessionFactory).build(); List<String> items = new ArrayList<>(); items.add("foo"); items.add("bar"); when(this.sessionFactory.openSession()).thenReturn(this.session); writer.write(items); verify(this.session).delete("foo"); verify(this.session).delete("bar"); verify(this.session, never()).save("foo"); verify(this.session, never()).save("bar"); }
@Test public void testWriteNullWithSession() throws Exception { writer = new Neo4jItemWriter<>(); writer.setSessionFactory(this.sessionFactory); writer.afterPropertiesSet(); when(this.sessionFactory.openSession()).thenReturn(this.session); writer.write(null); verifyZeroInteractions(this.session); }
/** * Validates and builds a {@link org.springframework.batch.item.data.Neo4jItemWriter}. * * @return a {@link Neo4jItemWriter} */ public Neo4jItemWriter<T> build() { Assert.notNull(sessionFactory, "sessionFactory is required."); Neo4jItemWriter<T> writer = new Neo4jItemWriter<>(); writer.setDelete(this.delete); writer.setSessionFactory(this.sessionFactory); return writer; } }
@Test public void testWriteNoItemsWithSession() throws Exception { writer = new Neo4jItemWriter<>(); writer.setSessionFactory(this.sessionFactory); writer.afterPropertiesSet(); when(this.sessionFactory.openSession()).thenReturn(this.session); writer.write(new ArrayList<>()); verifyZeroInteractions(this.session); }
@Test public void testDeleteItemsWithSession() throws Exception { writer = new Neo4jItemWriter<>(); writer.setSessionFactory(this.sessionFactory); writer.afterPropertiesSet(); List<String> items = new ArrayList<>(); items.add("foo"); items.add("bar"); writer.setDelete(true); when(this.sessionFactory.openSession()).thenReturn(this.session); writer.write(items); verify(this.session).delete("foo"); verify(this.session).delete("bar"); } }
@Test public void testWriteItemsWithSession() throws Exception { writer = new Neo4jItemWriter<>(); writer.setSessionFactory(this.sessionFactory); writer.afterPropertiesSet(); List<String> items = new ArrayList<>(); items.add("foo"); items.add("bar"); when(this.sessionFactory.openSession()).thenReturn(this.session); writer.write(items); verify(this.session).save("foo"); verify(this.session).save("bar"); }