package com.lordofthejars.nosqlunit.core; import static org.mockito.Mockito.times; import static org.mockito.Mockito.verify; import java.io.ByteArrayInputStream; import java.io.InputStream; import org.junit.Before; import org.junit.Test; import org.mockito.Mock; import org.mockito.MockitoAnnotations; public class WhenDeleteOperationIsExecuted { @Mock private DatabaseOperation databaseOperation; @Before public void setUp() { MockitoAnnotations.initMocks(this); } @Test public void delete_operations_should_be_executed() { DeleteAllLoadStrategyOperation insertLoadStrategyOperation = new DeleteAllLoadStrategyOperation(databaseOperation); InputStream[] contents = new InputStream[]{new ByteArrayInputStream("My name is".getBytes()), new ByteArrayInputStream("Jimmy Pop".getBytes())}; insertLoadStrategyOperation.executeScripts(contents); verify(databaseOperation, times(1)).deleteAll(); } @Test public void delete_operations_should_be_called_executed_if_no_data_is_provided() { DeleteAllLoadStrategyOperation insertLoadStrategyOperation = new DeleteAllLoadStrategyOperation(databaseOperation); InputStream[] contents = new InputStream[]{}; insertLoadStrategyOperation.executeScripts(contents); verify(databaseOperation, times(1)).deleteAll(); } }