package org.testng.reporters.jq; import org.testng.ISuite; import org.testng.reporters.XMLStringBuffer; import java.util.Collections; import java.util.List; public class GroupPanel extends BaseMultiSuitePanel { public GroupPanel(Model model) { super(model); } @Override public String getPrefix() { return "group-"; } @Override public String getHeader(ISuite suite) { return "Groups for " + suite.getName(); } @Override public String getContent(ISuite suite, XMLStringBuffer main) { XMLStringBuffer xsb = new XMLStringBuffer(main.getCurrentIndent()); List<String> sortedGroups = getModel().getGroups(suite.getName()); Collections.sort(sortedGroups); for (String group : sortedGroups) { xsb.push(D, C, "test-group"); xsb.addRequired(S, group, C, "test-group-name"); xsb.addEmptyElement("br"); List<String> sortedMethods = getModel().getMethodsInGroup(group); for (String method : sortedMethods) { xsb.push(D, C, "method-in-group"); xsb.addRequired(S, method, C, "method-in-group-name"); xsb.addEmptyElement("br"); xsb.pop(D); } xsb.pop(D); } return xsb.toXML(); } @Override public String getNavigatorLink(ISuite suite) { return pluralize(getModel().getGroups(suite.getName()).size(), "group"); } }