package forklift.message; import static org.junit.Assert.assertFalse; import static org.junit.Assert.assertTrue; import static org.mockito.Mockito.mock; import static org.mockito.Mockito.when; import forklift.connectors.ConnectorException; import forklift.controller.KafkaController; import org.apache.kafka.clients.consumer.ConsumerRecord; import org.junit.Before; import org.junit.Test; public class KafkaMessageTests { private KafkaController controller; private KafkaMessage message; private ConsumerRecord record; @Before public void setup() { controller = mock(KafkaController.class); record = new ConsumerRecord("testTopic", 0, 1L, "key", "value"); message = new KafkaMessage(controller, record); } @Test public void acknowledgeFalseTest() throws ConnectorException, InterruptedException { when(controller.acknowledge(record)).thenReturn(false); boolean acknowledged = message.acknowledge(); assertFalse(acknowledged); } @Test public void acknowledgeCallsControllerSuccess() throws ConnectorException, InterruptedException { when(controller.acknowledge(record)).thenReturn(true); boolean acknowledged = message.acknowledge(); assertTrue(acknowledged); } }