Preventing an NPE for compact source files inside test roots.
When there is a compact source file inside a test root, there's an NPE:
java.lang.NullPointerException: Cannot load from int array because the return value of "org.netbeans.api.java.source.TreeUtilities.findNameSpan(com.sun.source.tree.ClassTree)" is null
at org.netbeans.modules.junit.ui.actions.TestClassInfoTask.collect(TestClassInfoTask.java:126)
at org.netbeans.modules.junit.ui.actions.TestClassInfoTask.doComputeTestMethods(TestClassInfoTask.java:104)
at org.netbeans.modules.junit.ui.actions.TestClassInfoTask.computeTestMethods(TestClassInfoTask.java:91)
...
The reason is that the synthetic wrapper class does not have a name span (i.e. has null).
The proposal herein is to simply avoid the problems with a null check, and using the class' starting position instead of the name position.
^Add meaningful description above
Click to collapse/expand PR instructions
By opening a pull request you confirm that, unless explicitly stated otherwise, the changes -
- are all your own work, and you have the right to contribute them.
- are contributed solely under the terms and conditions of the Apache License 2.0 (see section 5 of the license for more information).
Please make sure (eg. git log) that all commits have a valid name and email address for you in the Author field.
If you're a first time contributor, see the Contributing guidelines for more information.
If you're a committer, please label the PR before pressing "Create pull request" so that the right test jobs can run.
PR approval and merge checklist:
- [ ] Was this PR correctly labeled, did the right tests run? When did they run?
- [ ] Is this PR squashed?
- [ ] Are author name / email address correct? Are co-authors correctly listed? Do the commit messages need updates?
- [ ] Does the PR title and description still fit after the Nth iteration? Is the description sufficient to appear in the release notes?
If this PR targets the delivery branch: don't merge. (full wiki article)