// This software is released into the Public Domain. See copying.txt for details. package org.openstreetmap.osmosis.xml.v0_6; import java.io.File; import java.io.IOException; import org.junit.Test; import org.openstreetmap.osmosis.core.Osmosis; import org.openstreetmap.osmosis.testutil.AbstractDataTest; /** * A simple test verifying the operation of the xml reader and writer tasks. * * @author Brett Henderson */ public class XmlReaderWriterTest extends AbstractDataTest { /** * A basic test reading and writing an osm file testing both reader and * writer tasks. * * @throws IOException * if any file operations fail. */ @Test public void testSimple() throws IOException { File inputFile; File outputFile; // Generate input files. inputFile = dataUtils.createDataFile("v0_6/xml-task-tests-v0_6.osm"); outputFile = dataUtils.newFile(); // Run the pipeline. Osmosis.run( new String [] { "-q", "--read-xml-0.6", inputFile.getPath(), "--write-xml-0.6", outputFile.getPath() } ); // Validate that the output file matches the input file. dataUtils.compareFiles(inputFile, outputFile); } /** * A basic test reading and writing an osm file testing both reader and * writer tasks. * * @throws IOException * if any file operations fail. */ @Test public void testSimpleCompressed() throws IOException { File uncompressedFile; File workingFolder; File inputFile; File outputFile; // Generate input files. uncompressedFile = dataUtils.createDataFile("v0_6/xml-task-tests-v0_6.osm"); workingFolder = dataUtils.newFolder(); inputFile = new File(workingFolder, "testin.osm.gz"); outputFile = new File(workingFolder, "testout.osm.gz"); dataUtils.compressFile(uncompressedFile, inputFile); // Run the pipeline. Osmosis.run( new String [] { "-q", "--read-xml-0.6", inputFile.getPath(), "--write-xml-0.6", outputFile.getPath() } ); // Validate that the output file matches the input file. dataUtils.compareFiles(inputFile, outputFile); } }