1package org.testng.reporters.jq; 2 3import org.testng.ISuite; 4import org.testng.reporters.XMLStringBuffer; 5 6import java.util.Collections; 7import java.util.List; 8 9public class GroupPanel extends BaseMultiSuitePanel { 10 public GroupPanel(Model model) { 11 super(model); 12 } 13 14 @Override 15 public String getPrefix() { 16 return "group-"; 17 } 18 19 @Override 20 public String getHeader(ISuite suite) { 21 return "Groups for " + suite.getName(); 22 } 23 24 @Override 25 public String getContent(ISuite suite, XMLStringBuffer main) { 26 XMLStringBuffer xsb = new XMLStringBuffer(main.getCurrentIndent()); 27 List<String> sortedGroups = getModel().getGroups(suite.getName()); 28 Collections.sort(sortedGroups); 29 for (String group : sortedGroups) { 30 xsb.push(D, C, "test-group"); 31 xsb.addRequired(S, group, C, "test-group-name"); 32 xsb.addEmptyElement("br"); 33 List<String> sortedMethods = getModel().getMethodsInGroup(group); 34 for (String method : sortedMethods) { 35 xsb.push(D, C, "method-in-group"); 36 xsb.addRequired(S, method, C, "method-in-group-name"); 37 xsb.addEmptyElement("br"); 38 xsb.pop(D); 39 } 40 xsb.pop(D); 41 } 42 return xsb.toXML(); 43 } 44 45 @Override 46 public String getNavigatorLink(ISuite suite) { 47 return pluralize(getModel().getGroups(suite.getName()).size(), "group"); 48 } 49} 50