package test.parameters; import org.testng.TestListenerAdapter; import org.testng.TestNG; import org.testng.annotations.Test; import org.testng.xml.XmlClass; import org.testng.xml.XmlInclude; import org.testng.xml.XmlSuite; import org.testng.xml.XmlTest; import test.SimpleBaseTest; import java.util.Arrays; public class ShadowTest extends SimpleBaseTest { @Test public void parametersShouldNotBeShadowed() { XmlSuite s = createXmlSuite("s"); XmlTest t = createXmlTest(s, "t"); { XmlClass c1 = new XmlClass(Shadow1SampleTest.class.getName()); XmlInclude include1 = new XmlInclude("test1"); include1.setXmlClass(c1); c1.getLocalParameters().put("a", "First"); c1.getIncludedMethods().add(include1); t.getXmlClasses().add(c1); } { XmlClass c2 = new XmlClass(Shadow2SampleTest.class.getName()); XmlInclude include2 = new XmlInclude("test2"); include2.setXmlClass(c2); c2.getLocalParameters().put("a", "Second"); c2.getIncludedMethods().add(include2); t.getXmlClasses().add(c2); } TestNG tng = create(); tng.setXmlSuites(Arrays.asList(s)); TestListenerAdapter tla = new TestListenerAdapter(); tng.addListener(tla); tng.run(); // System.out.println(s.toXml()); assertTestResultsEqual(tla.getPassedTests(), Arrays.asList("test1", "test2")); } }