diff --git a/wise-webapp/src/test/data/svg/map1.png b/wise-webapp/src/test/data/svg/map1.png new file mode 100644 index 00000000..e69de29b diff --git a/wise-webapp/src/test/data/svg/map1.svg b/wise-webapp/src/test/data/svg/map1.svg new file mode 100644 index 00000000..fea87c35 --- /dev/null +++ b/wise-webapp/src/test/data/svg/map1.svg @@ -0,0 +1,83 @@ + + + + + + + + + + + + + + Sub Topic + + + + + + + Sub Topic + + + + + + + Sub Topic + + + + + + + + + Main Topic + + + + + + + exporttes't + + + + + + + + \ No newline at end of file diff --git a/wise-webapp/src/test/java/com/wisemapping/test/export/ExportTest.java b/wise-webapp/src/test/java/com/wisemapping/test/export/ExportTest.java new file mode 100644 index 00000000..6e38c10d --- /dev/null +++ b/wise-webapp/src/test/java/com/wisemapping/test/export/ExportTest.java @@ -0,0 +1,104 @@ +package com.wisemapping.test.export; + +import com.wisemapping.exporter.ExportException; +import com.wisemapping.exporter.ExportFormat; +import com.wisemapping.exporter.ExportProperties; +import com.wisemapping.exporter.freemind.FreemindExporter; +import com.wisemapping.importer.ImportFormat; +import com.wisemapping.importer.Importer; +import com.wisemapping.importer.ImporterException; +import com.wisemapping.importer.ImporterFactory; + +import com.wisemapping.model.MindMap; +import com.wisemapping.model.MindMapNative; +import org.apache.batik.transcoder.TranscoderException; +import org.jetbrains.annotations.NotNull; +import org.testng.Assert; +import org.testng.annotations.DataProvider; +import org.testng.annotations.Test; +import org.xml.sax.SAXException; + +import javax.xml.bind.JAXBException; +import javax.xml.parsers.ParserConfigurationException; +import javax.xml.stream.XMLStreamException; +import javax.xml.transform.TransformerException; +import java.io.*; +import java.nio.ByteBuffer; +import java.nio.channels.FileChannel; + +@Test +public class ExportTest { + private static final String DATA_DIR_PATH = "src/test/data/svg/"; + + @Test(dataProvider = "Data-Provider-Function") + public void exportSvgTest(@NotNull final File svgFile, @NotNull final File pngFile) throws ImporterException, IOException, ExportException { + + BufferedReader reader = null; + StringBuffer buffer = new StringBuffer(); + + reader = new BufferedReader(new FileReader(svgFile)); + String text; + while((text=reader.readLine()) != null){ + buffer.append(text).append(System.getProperty("line.separator")); + } + + String svgXml = buffer.toString(); + + final ExportFormat format = ExportFormat.PNG; + final ExportProperties properties = ExportProperties.create(format); + final ExportProperties.ImageProperties imageProperties = (ExportProperties.ImageProperties) properties; + imageProperties.setSize(ExportProperties.ImageProperties.Size.LARGE); + + // Write content ... + MindMap mindMap = new MindMap(); + MindMapNative nativeBrowser = new MindMapNative(); + nativeBrowser.setSvgXml(svgXml); + mindMap.setNativeBrowser(nativeBrowser); + + //Export to PNG + OutputStream outputStream = new FileOutputStream(pngFile, false); + try { + mindMap.export(properties, outputStream); + outputStream.close(); + System.out.println("finished"); + } catch (JAXBException e) { + e.printStackTrace(); //To change body of catch statement use File | Settings | File Templates. + } catch (TranscoderException e) { + e.printStackTrace(); //To change body of catch statement use File | Settings | File Templates. + } catch (TransformerException e) { + e.printStackTrace(); //To change body of catch statement use File | Settings | File Templates. + } catch (ParserConfigurationException e) { + e.printStackTrace(); //To change body of catch statement use File | Settings | File Templates. + } catch (SAXException e) { + e.printStackTrace(); //To change body of catch statement use File | Settings | File Templates. + } catch (XMLStreamException e) { + e.printStackTrace(); //To change body of catch statement use File | Settings | File Templates. + } + + + } + + //This function will provide the parameter data + @DataProvider(name = "Data-Provider-Function") + public Object[][] parameterIntTestProvider() { + + final File dataDir = new File(DATA_DIR_PATH); + final File[] freeMindFiles = dataDir.listFiles(new FilenameFilter() { + + public boolean accept(File dir, String name) { + return name.endsWith(".svg"); + } + }); + + final Object[][] result = new Object[freeMindFiles.length][2]; + for (int i = 0; i < freeMindFiles.length; i++) { + File freeMindFile = freeMindFiles[i]; + final String name = freeMindFile.getName(); + result[i] = new Object[]{freeMindFile, new File(DATA_DIR_PATH, name.substring(0, name.lastIndexOf(".")) + ".png")}; + } + + return result; + } + + +} diff --git a/wise-webapp/testng.xml b/wise-webapp/testng.xml index daba101b..46872496 100644 --- a/wise-webapp/testng.xml +++ b/wise-webapp/testng.xml @@ -4,6 +4,7 @@ +