1package org.testng.reporters.jq;
2
3import org.testng.ISuite;
4import org.testng.reporters.XMLStringBuffer;
5import org.testng.xml.XmlTest;
6
7/**
8 * Display the list of <test> tags.
9 */
10public class TestPanel extends BaseMultiSuitePanel {
11
12  public TestPanel(Model model) {
13    super(model);
14  }
15
16
17  @Override
18  public String getPrefix() {
19    return "testlist-";
20  }
21
22  @Override
23  public String getHeader(ISuite suite) {
24    return "Tests for " + suite.getName();
25  }
26
27  @Override
28  public String getContent(ISuite suite, XMLStringBuffer main) {
29    XMLStringBuffer xsb = new XMLStringBuffer(main.getCurrentIndent());
30
31    xsb.push("ul");
32    for (XmlTest test : suite.getXmlSuite().getTests()) {
33      xsb.push("li");
34      int count = test.getXmlClasses().size();
35      String name = test.getName() + " (" + pluralize(count, "class") + ")";
36      xsb.addRequired(S, name, C, "test-name");
37      xsb.pop("li");
38    }
39    xsb.pop("ul");
40
41    return xsb.toXML();
42  }
43
44  @Override
45  public String getNavigatorLink(ISuite suite) {
46    return pluralize(suite.getXmlSuite().getTests().size(), "test");
47  }
48
49  @Override
50  public String getClassName() {
51    return "test-stats";
52  }
53}
54