org.testng.xml.XmlGroups Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of testng Show documentation
Show all versions of testng Show documentation
Testing framework for Java
package org.testng.xml;
import org.testng.collections.Lists;
import org.testng.reporters.XMLStringBuffer;
import org.testng.xml.dom.Tag;
import java.util.List;
import static org.testng.collections.CollectionUtils.hasElements;
public class XmlGroups {
private List m_defines = Lists.newArrayList();
private XmlRun m_run;
private List m_dependencies = Lists.newArrayList();
public List getDefines() {
return m_defines;
}
@Tag(name = "define")
public void addDefine(XmlDefine define) {
getDefines().add(define);
}
public void setDefines(List defines) {
m_defines = defines;
}
public XmlRun getRun() {
return m_run;
}
public void setRun(XmlRun run) {
m_run = run;
}
public List getDependencies() {
return m_dependencies;
}
// public void setDependencies(List dependencies) {
// m_dependencies = dependencies;
// }
@Tag(name = "dependencies")
public void setXmlDependencies(XmlDependencies dependencies) {
m_dependencies.add(dependencies);
}
public String toXml(String indent) {
XMLStringBuffer xsb = new XMLStringBuffer(indent);
String indent2 = indent + " ";
boolean hasGroups = hasElements(m_defines) || m_run != null || hasElements(m_dependencies);
if (hasGroups) {
xsb.push("groups");
}
for (XmlDefine d : m_defines) {
xsb.getStringBuffer().append(d.toXml(indent2));
}
if (null != m_run) {
// XmlRun is optional and is not always available. So check if its available before running
// toXml()
xsb.getStringBuffer().append(m_run.toXml(indent2));
}
for (XmlDependencies d : m_dependencies) {
xsb.getStringBuffer().append(d.toXml(indent2));
}
if (hasGroups) {
xsb.pop("groups");
}
return xsb.toXML();
}
}