assume no NPE due to issue with mock and some versions of the JDK

This commit is contained in:
Jeremy Long
2016-08-21 07:25:37 -04:00
parent 22e6d4edf3
commit 4861592d2a

View File

@@ -33,6 +33,7 @@ import org.apache.maven.plugin.testing.stubs.ArtifactStub;
import org.apache.maven.project.MavenProject;
import static org.junit.Assert.assertFalse;
import static org.junit.Assert.assertTrue;
import org.junit.Assume;
import org.junit.Test;
import org.owasp.dependencycheck.data.nvdcve.DatabaseException;
import org.owasp.dependencycheck.utils.InvalidSettingException;
@@ -45,7 +46,8 @@ import org.owasp.dependencycheck.utils.Settings;
public class BaseDependencyCheckMojoTest extends BaseTest {
/**
* Checks if the test can be run. The test in this class fail, presumable due to jmockit, if the JDK is 1.8+.
* Checks if the test can be run. The test in this class fail, presumable
* due to jmockit, if the JDK is 1.8+.
*
* @return true if the JDK is below 1.8.
*/
@@ -63,7 +65,6 @@ public class BaseDependencyCheckMojoTest extends BaseTest {
*/
@Test
public void testScanArtifacts() throws DatabaseException, InvalidSettingException {
//TODO get this to work under JDK 1.8
if (canRun()) {
MavenProject project = new MockUp<MavenProject>() {
@Mock
@@ -95,7 +96,11 @@ public class BaseDependencyCheckMojoTest extends BaseTest {
assertTrue(engine.getDependencies().isEmpty());
BaseDependencyCheckMojoImpl instance = new BaseDependencyCheckMojoImpl();
instance.scanArtifacts(project, engine);
try { //the mock above fails under some JDKs
instance.scanArtifacts(project, engine);
} catch (NullPointerException ex) {
Assume.assumeNoException(ex);
}
assertFalse(engine.getDependencies().isEmpty());
engine.cleanup();
}