/* * Copyright (c) 2016 Vivid Solutions. * * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * and Eclipse Distribution License v. 1.0 which accompanies this distribution. * The Eclipse Public License is available at http://www.eclipse.org/legal/epl-v10.html * and the Eclipse Distribution License is available at * * http://www.eclipse.org/org/documents/edl-v10.php. */ package org.locationtech.jtstest; import junit.framework.TestCase; import org.locationtech.jts.util.Assert; import org.locationtech.jtstest.testrunner.SimpleReportWriter; import org.locationtech.jtstest.testrunner.TestEngine; import java.io.File; import java.util.Arrays; import java.util.List; public class CoreGeometryXMLTest extends TestCase { public CoreGeometryXMLTest(String name) { super(name); } // public void testExternal() { // testFiles("../core/src/test/resources/testxml/external"); // } // public void testFailure() { // testFiles("../core/src/test/resources/testxml/failure"); // } public void testGeneral() { testFiles("src/test/resources/testxml/general"); } // public void testRobust() { // testFiles("../core/src/test/resources/testxml/robust"); // } // public void testStmlf() { // testFiles("../core/src/test/resources/testxml/stmlf"); // } public void testValidate() { testFiles("src/test/resources/testxml/validate"); } private void testFiles(String directoryName) { TestEngine engine = new TestEngine(); List testFiles = filenames(new File(directoryName)); engine.setTestFiles(testFiles); engine.run(); SimpleReportWriter reportWriter = new SimpleReportWriter(false); reportWriter.writeReport(engine); System.out.println(reportWriter.writeReport(engine)); boolean failures = engine.getParseExceptionCount() + engine.getFailedCount() + engine.getExceptionCount() > 0; assertEquals(failures, false); } private static List<File> filenames(File directory) { Assert.isTrue(directory.isDirectory()); File[] files = directory.listFiles(); return Arrays.asList(files); } }