//Dstl (c) Crown Copyright 2017 package uk.gov.dstl.baleen.core.history; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertNotNull; import static org.mockito.Mockito.doReturn; import org.apache.uima.resource.ResourceInitializationException; import org.apache.uima.resource.impl.CustomResourceSpecifier_impl; import org.junit.Before; import org.junit.Test; import org.junit.runner.RunWith; import org.mockito.Mock; import org.mockito.junit.MockitoJUnitRunner; import com.google.common.collect.Maps; import uk.gov.dstl.baleen.core.history.logging.LoggingBaleenHistory; @RunWith(MockitoJUnitRunner.Silent.class) public class LoggingBaleenHistoryTest { @Mock private Recordable recordable; private HistoryEvent event; private String documentId = "fakeId"; @Before public void setUp() { doReturn(1L).when(recordable).getInternalId(); event = HistoryEvents.createAdded(recordable, "referrer"); } @Test public void testNoExceptionInNormalUse() throws ResourceInitializationException { LoggingBaleenHistory bh = new LoggingBaleenHistory(); bh.initialize(new CustomResourceSpecifier_impl(), Maps.newHashMap()); addAtLevel(bh, "info", documentId, event); addAtLevel(bh, "errpr", documentId, event); addAtLevel(bh, "warn", documentId, event); addAtLevel(bh, "trace", documentId, event); addAtLevel(bh, "debug", documentId, event); addAtLevel(bh, "not valid", documentId, event); addAtLevel(bh, null, documentId, event); assertEquals("info", bh.getLevel()); DocumentHistory history = bh.getHistory(documentId); assertNotNull(history); bh.closeHistory(documentId ); bh.destroy(); bh.add(documentId, event); } private void addAtLevel(LoggingBaleenHistory bh, String level, String documentId, HistoryEvent event) { bh.setLevel(level); bh.add(documentId, event); } // TODO: Test naming }