albertogoffi / toradocu

Toradocu - automated generation of test oracles from Javadoc documentation
Other
42 stars 21 forks source link

Toradocu throws an uncaught NullPointerException if class file cannot be loaded #57

Closed bjkeller closed 7 years ago

bjkeller commented 7 years ago

If there is no .class file for the target class in --class-dir the following is output

[main] ERROR org.toradocu.util.Reflection - Unable to load class net.Connection. Check the classpath.
Exception in thread "main" java.lang.NullPointerException
    at org.toradocu.translator.ClassCodeElement.<init>(ClassCodeElement.java:22)
    at org.toradocu.translator.JavaElementsCollector.collect(JavaElementsCollector.java:30)
    at org.toradocu.translator.Matcher.subjectMatch(Matcher.java:36)
    at org.toradocu.translator.ConditionTranslator.translatePropositions(ConditionTranslator.java:201)
    at org.toradocu.translator.ConditionTranslator.processTag(ConditionTranslator.java:408)
    at org.toradocu.translator.ConditionTranslator.translate(ConditionTranslator.java:36)
    at org.toradocu.Toradocu.main(Toradocu.java:145)

Toradocu should exit after the error message unless there is a way to proceed without the Class<> object.

albertogoffi commented 7 years ago

Instead of terminating Toradocu, I let the method JavaElementsCollector#collect return an empty set of Java code elements when a given class cannot be loaded.