1.1 --- a/testng/src/org/netbeans/modules/contrib/testng/output/JumpAction.java Thu Dec 22 02:04:53 2011 +0100
1.2 +++ b/testng/src/org/netbeans/modules/contrib/testng/output/JumpAction.java Thu Dec 22 03:08:04 2011 +0100
1.3 @@ -44,6 +44,7 @@
1.4 import java.awt.event.ActionEvent;
1.5 import javax.swing.AbstractAction;
1.6 import javax.swing.Action;
1.7 +import org.netbeans.modules.gsf.testrunner.api.TestSuite;
1.8 import org.openide.nodes.Node;
1.9 import org.openide.util.NbBundle;
1.10
1.11 @@ -70,6 +71,7 @@
1.12 */
1.13 public void actionPerformed(ActionEvent e) {
1.14 if (node instanceof TestNGSuiteNode){
1.15 + //TODO: open xml file on a particular line...
1.16 OutputUtils.openTestsuite((TestNGSuiteNode)node);
1.17 } else if (node instanceof CallstackFrameNode){
1.18 OutputUtils.openCallstackFrame(node, callstackFrameInfo);
1.19 @@ -79,6 +81,17 @@
1.20 }
1.21
1.22 @Override
1.23 + public boolean isEnabled() {
1.24 + if (node instanceof TestNGSuiteNode) {
1.25 + TestSuite suite = ((TestNGSuiteNode) node).getSuite();
1.26 + if ((suite != null) && (suite instanceof TestNGTestSuite)) {
1.27 + return ((TestNGTestSuite) suite).getSuiteFO() != null;
1.28 + }
1.29 + }
1.30 + return super.isEnabled();
1.31 + }
1.32 +
1.33 + @Override
1.34 public Object getValue(String key) {
1.35 if (key.equals(Action.NAME)) {
1.36 return NbBundle.getMessage(JumpAction.class, "LBL_GotoSource"); //NOI18N
2.1 --- a/testng/src/org/netbeans/modules/contrib/testng/output/OutputUtils.java Thu Dec 22 02:04:53 2011 +0100
2.2 +++ b/testng/src/org/netbeans/modules/contrib/testng/output/OutputUtils.java Thu Dec 22 03:08:04 2011 +0100
2.3 @@ -50,6 +50,7 @@
2.4 import javax.lang.model.element.Element;
2.5 import javax.lang.model.element.ElementKind;
2.6 import javax.lang.model.element.ExecutableElement;
2.7 +import static javax.lang.model.util.ElementFilter.methodsIn;
2.8 import javax.swing.Action;
2.9 import org.netbeans.api.extexecution.print.LineConvertors.FileLocator;
2.10 import org.netbeans.api.java.source.CompilationController;
2.11 @@ -66,7 +67,6 @@
2.12 import org.openide.text.Line;
2.13 import org.openide.text.Line.ShowOpenType;
2.14 import org.openide.text.Line.ShowVisibilityType;
2.15 -import static javax.lang.model.util.ElementFilter.*;
2.16
2.17 /**
2.18 *
2.19 @@ -135,7 +135,7 @@
2.20 if (element != null && element.getKind() == ElementKind.CLASS && element.getSimpleName().contentEquals(fo.getName())) {
2.21 List<? extends ExecutableElement> methodElements = methodsIn(element.getEnclosedElements());
2.22 for (Element child : methodElements) {
2.23 - if (child.getSimpleName().contentEquals(node.getTestcase().getName())) {
2.24 + if (child.getSimpleName().contentEquals(node.getTestcase().getTestName())) {
2.25 long pos = trees.getSourcePositions().getStartPosition(compilationUnitTree, trees.getTree(child));
2.26 line[0] = compilationUnitTree.getLineMap().getLineNumber(pos);
2.27 break;
2.28 @@ -315,7 +315,7 @@
2.29
2.30 try {
2.31 DataObject dob = DataObject.find(file);
2.32 - EditorCookie ed = dob.getCookie(EditorCookie.class);
2.33 + EditorCookie ed = dob.getLookup().lookup(EditorCookie.class);
2.34 if (ed != null
2.35 && /* not true e.g. for *_ja.properties */ file == dob.getPrimaryFile()) {
2.36 if (lineNum == -1) {
3.1 --- a/testng/src/org/netbeans/modules/contrib/testng/output/TestNGMethodNode.java Thu Dec 22 02:04:53 2011 +0100
3.2 +++ b/testng/src/org/netbeans/modules/contrib/testng/output/TestNGMethodNode.java Thu Dec 22 03:08:04 2011 +0100
3.3 @@ -74,7 +74,7 @@
3.4
3.5 @Override
3.6 public Action[] getActions(boolean context) {
3.7 - ic.add(new SingleMethod(getTestcase().getClassFileObject(), getTestcase().getName()));
3.8 + ic.add(new SingleMethod(getTestcase().getClassFileObject(), getTestcase().getTestName()));
3.9 ic.add(getTestcase());
3.10 List<Action> actions = new ArrayList<Action>();
3.11 Action preferred = getPreferredAction();
4.1 --- a/testng/src/org/netbeans/modules/contrib/testng/output/TestNGSuiteNode.java Thu Dec 22 02:04:53 2011 +0100
4.2 +++ b/testng/src/org/netbeans/modules/contrib/testng/output/TestNGSuiteNode.java Thu Dec 22 03:08:04 2011 +0100
4.3 @@ -46,6 +46,7 @@
4.4 import javax.swing.Action;
4.5 import org.netbeans.modules.contrib.testng.actions.DebugTestClassAction;
4.6 import org.netbeans.modules.gsf.testrunner.api.TestsuiteNode;
4.7 +import org.openide.filesystems.FileObject;
4.8 import org.openide.util.actions.SystemAction;
4.9 import org.openide.util.lookup.AbstractLookup;
4.10 import org.openide.util.lookup.InstanceContent;
4.11 @@ -75,7 +76,10 @@
4.12
4.13 @Override
4.14 public Action[] getActions(boolean context) {
4.15 - ic.add(((TestNGTestSuite) getSuite()).getSuiteFO());
4.16 + FileObject fo = ((TestNGTestSuite) getSuite()).getSuiteFO();
4.17 + if (fo != null) {
4.18 + ic.add(fo);
4.19 + }
4.20 List<Action> actions = new ArrayList<Action>();
4.21 Action preferred = getPreferredAction();
4.22 if (preferred != null) {
5.1 --- a/testng/src/org/netbeans/modules/contrib/testng/output/TestNGTestcase.java Thu Dec 22 02:04:53 2011 +0100
5.2 +++ b/testng/src/org/netbeans/modules/contrib/testng/output/TestNGTestcase.java Thu Dec 22 03:08:04 2011 +0100
5.3 @@ -56,14 +56,17 @@
5.4 private boolean confMethod = false;
5.5 private String parameters;
5.6 private List<String> values = new ArrayList<String>();
5.7 + private final String testName;
5.8 private String description;
5.9
5.10 //TODO: there should be subnode for each value instead
5.11 public TestNGTestcase(String name, String params, String values, TestSession session) {
5.12 super(values != null ? name + "(" + values+ ")" : name, "TestNG Test", session);
5.13 + setClassName(name.substring(0, name.lastIndexOf('.')));
5.14 // parameters = params;
5.15 parameters = values;
5.16 this.values.add(values);
5.17 + testName = name.substring(name.lastIndexOf(".") + 1);
5.18 }
5.19
5.20 public String getParameters() {
5.21 @@ -101,4 +104,8 @@
5.22 public String getDescription() {
5.23 return description;
5.24 }
5.25 +
5.26 + public String getTestName() {
5.27 + return testName;
5.28 + }
5.29 }
6.1 --- a/testng/src/org/netbeans/modules/contrib/testng/output/XmlOutputParser.java Thu Dec 22 02:04:53 2011 +0100
6.2 +++ b/testng/src/org/netbeans/modules/contrib/testng/output/XmlOutputParser.java Thu Dec 22 03:08:04 2011 +0100
6.3 @@ -334,9 +334,8 @@
6.4
6.5 private TestNGTestcase createTestcaseReport(String className, String name, int time) {
6.6 // TestNGTestcase tc = new TestNGTestcase(name, "TestNG Test", testSession);
6.7 - TestNGTestcase tc = new TestNGTestcase(name, "params", null, testSession);
6.8 + TestNGTestcase tc = new TestNGTestcase(className + "." + name, "params", null, testSession);
6.9 tc.setTimeMillis(time);
6.10 - tc.setClassName(className);
6.11 return tc;
6.12 }
6.13 }
7.1 --- a/testng/test/unit/src/org/netbeans/modules/contrib/testng/output/XmlOutputParserTest.java Thu Dec 22 02:04:53 2011 +0100
7.2 +++ b/testng/test/unit/src/org/netbeans/modules/contrib/testng/output/XmlOutputParserTest.java Thu Dec 22 03:08:04 2011 +0100
7.3 @@ -74,7 +74,7 @@
7.4 List<Testcase> testcases = result.getTestcases();
7.5 assertEquals(3, testcases.size());
7.6 Testcase[] tcs = testcases.toArray(new Testcase[3]);
7.7 - assertEquals("cTest", tcs[1].getName());
7.8 + assertEquals("test.FailPassSkipTest.cTest", tcs[1].getName());
7.9 // assertEquals(1, result.failures);
7.10 // assertEquals(1, result.skips);
7.11 // assertEquals(3, result.totalTests);
7.12 @@ -91,7 +91,7 @@
7.13 testcases = result.getTestcases();
7.14 assertEquals(3, testcases.size());
7.15 tcs = testcases.toArray(new Testcase[3]);
7.16 - assertEquals("setUp", tcs[0].getName());
7.17 + assertEquals("test.SetUpTest.setUp", tcs[0].getName());
7.18 // assertEquals(0, result.failures);
7.19 // assertEquals(1, result.skips);
7.20 // assertEquals(1, result.totalTests);