blob: 9faa9c5c2038eed5d64a04d18799ff17e6df6ef8 [file] [log] [blame]
package org.testng.xml;
import org.testng.Assert;
import org.testng.annotations.DataProvider;
import org.testng.annotations.Test;
import java.io.File;
import java.io.FileInputStream;
import static test.SimpleBaseTest.getPathToResource;
public class SuiteXmlParserTest {
private static final File PARENT = new File(getPathToResource("xml"));
@DataProvider
private static Object[][] dp() {
return new Object[][] {
{ "goodWithDoctype.xml", true },
{ "goodWithoutDoctype.xml", true },
{ "badWithDoctype.xml", false }, // TestNGException -> SAXParseException
{ "badWithoutDoctype.xml", false } // NullPointerException
};
}
@Test(dataProvider = "dp")
public void testParse(String fileName, boolean shouldWork) {
SuiteXmlParser parser = new SuiteXmlParser();
try (FileInputStream stream = new FileInputStream(new File(PARENT, fileName))) {
parser.parse(fileName, stream, false);
if (!shouldWork) {
Assert.fail("Parsing of " + fileName + " is supposed to fail");
}
} catch (Exception e) {
if (shouldWork) {
Assert.fail("Parsing of " + fileName + " is supposed to work");
}
}
}
}