package de.ks.idnadrev.information.chart.adoc; import com.google.common.io.Files; import org.hamcrest.Matchers; import org.junit.Before; import org.junit.Test; import org.mockito.Mockito; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import java.io.File; import java.nio.file.Path; import static org.hamcrest.Matchers.containsString; import static org.junit.Assert.assertThat; public class ChartPreProcessorTest { private static final Logger log = LoggerFactory.getLogger(ChartPreProcessorTest.class); private ChartPreProcessor preProcessor; private File tempDir; @Before public void setUp() throws Exception { preProcessor = new ChartPreProcessor(); ChartFileRendering rendering = Mockito.mock(ChartFileRendering.class); preProcessor.fileRendering = rendering; tempDir = Files.createTempDir(); } @Test public void testReplacing() throws Exception { String text = "chart::103\n\n== Title\nbla blubb\nchart::1 ende\nchart::1"; String result = preProcessor.preProcess(text, null); log.info(result); assertThat(result, containsString("image::")); Mockito.verify(preProcessor.fileRendering).renderToFile(Mockito.eq(103L), Mockito.any(Path.class)); Mockito.verify(preProcessor.fileRendering, Mockito.atMost(1)).renderToFile(Mockito.eq(1L), Mockito.any(Path.class)); } @Test public void testEnding() throws Exception { String text = "chart::103\n\n== Title\nbla blubb\nchart::1 ende\nchart::1 Sauerland"; String result = preProcessor.preProcess(text, null); assertThat(result, Matchers.endsWith("Sauerland")); } }