From d7ef057f90f11fa673dad69f67beacfb46c097dc Mon Sep 17 00:00:00 2001 From: Dou Mok Date: Mon, 3 Feb 2025 14:51:46 -0800 Subject: [PATCH] Fix bug in 'getHashStoreFromMetadigProps' where exception was thrown instead of a return value and update junit tests --- .../nceas/mdqengine/scheduler/RequestReportJob.java | 2 +- .../mdqengine/scheduler/RequestReportJobTest.java | 12 ++++++------ 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/src/main/java/edu/ucsb/nceas/mdqengine/scheduler/RequestReportJob.java b/src/main/java/edu/ucsb/nceas/mdqengine/scheduler/RequestReportJob.java index 231c1bba..264bb5b3 100644 --- a/src/main/java/edu/ucsb/nceas/mdqengine/scheduler/RequestReportJob.java +++ b/src/main/java/edu/ucsb/nceas/mdqengine/scheduler/RequestReportJob.java @@ -865,7 +865,7 @@ public HashStore getHashStoreFromMetadigProps() } catch (Exception e) { log.error("Unable to instantiate a hashstore: " + e.getMessage()); - throw e; + return hashStore; } return hashStore; } diff --git a/src/test/java/edu/ucsb/nceas/mdqengine/scheduler/RequestReportJobTest.java b/src/test/java/edu/ucsb/nceas/mdqengine/scheduler/RequestReportJobTest.java index 80a69cc1..264c51ca 100644 --- a/src/test/java/edu/ucsb/nceas/mdqengine/scheduler/RequestReportJobTest.java +++ b/src/test/java/edu/ucsb/nceas/mdqengine/scheduler/RequestReportJobTest.java @@ -209,7 +209,7 @@ public void testGetSystemMetadataFromHashStore_nullHashStore() throws Exception * Confirm that an input stream to a data object is returned. No exception should be thrown. */ @Test - public void testGetObjectFromHashStore() { + public void testGetObjectFromHashStore() throws Exception { RequestReportJob job = new RequestReportJob(); Identifier pid = new Identifier(); pid.setValue(testPid); @@ -239,10 +239,10 @@ public void testGetObjectFromHashStore_NotAuthorized() throws Exception { /** * Confirm that no exception bubbles up when a hashstore is null, and the MN and CN API - * throws an exception when retrieving an eml metadata object + * throws an exception when retrieving a data object (ex. eml metadata doc) */ @Test - public void testGetEMLMetadataDocFromHashStore_nullHashStore() throws Exception { + public void testGetObjectFromHashStore_nullHashStore() throws Exception { RequestReportJob job = new RequestReportJob(); MultipartMNode mnNode = mock(MultipartMNode.class); Session session = mock(Session.class); @@ -252,7 +252,7 @@ public void testGetEMLMetadataDocFromHashStore_nullHashStore() throws Exception when(mnNode.get(session, pid)).thenThrow( new NotAuthorized("8000", "User is not authorized")); - job.getSystemMetadataFromHashStore(pid, null); + job.getObjectFromHashStore(pid, null); } /** @@ -291,10 +291,10 @@ public void testGetHashStorePropsFromMetadigProps_hashStoreUnavailable() throws .when(() -> HashStoreFactory.getHashStore(anyString(), any(Properties.class))) .thenThrow(new IOException("Mocked IOException")); - HashStore result = job.getHashStoreFromMetadigProps(); + HashStore hashstore = job.getHashStoreFromMetadigProps(); assertNull( - result, + hashstore, "HashStore should return as null when any exception is thrown "); } }