From cabbe5ced5f77559bd3ef299c4055eb2d26482b7 Mon Sep 17 00:00:00 2001 From: Richard Millet Date: Wed, 23 Jan 2013 15:13:28 -0800 Subject: [PATCH] CSPACE-5564: Added a test to the report service that creates a new Acquisition reports_common record, creates an Acquisition record, invokes the report and publishes it to the PublicItem service where it can be reached via anonymous access. --- services/acquisition/client/pom.xml | 1 - .../services/client/AcquisitionClient.java | 3 - services/acquisition/jaxb/pom.xml | 1 - services/report/client/pom.xml | 12 +++- .../client/test/ReportServiceTest.java | 57 +++++++++++++++++-- 5 files changed, 62 insertions(+), 12 deletions(-) diff --git a/services/acquisition/client/pom.xml b/services/acquisition/client/pom.xml index 4b5256793..ee2f64bc0 100644 --- a/services/acquisition/client/pom.xml +++ b/services/acquisition/client/pom.xml @@ -9,7 +9,6 @@ 4.0.0 - org.collectionspace.services org.collectionspace.services.acquisition.client services.acquisition.client jar diff --git a/services/acquisition/client/src/main/java/org/collectionspace/services/client/AcquisitionClient.java b/services/acquisition/client/src/main/java/org/collectionspace/services/client/AcquisitionClient.java index 77fff67df..52814b637 100644 --- a/services/acquisition/client/src/main/java/org/collectionspace/services/client/AcquisitionClient.java +++ b/services/acquisition/client/src/main/java/org/collectionspace/services/client/AcquisitionClient.java @@ -1,8 +1,5 @@ package org.collectionspace.services.client; -import org.jboss.resteasy.client.ClientResponse; -import org.collectionspace.services.jaxb.AbstractCommonList; - /** * An AcquisitionClient. diff --git a/services/acquisition/jaxb/pom.xml b/services/acquisition/jaxb/pom.xml index 75c9486f5..807085dd2 100644 --- a/services/acquisition/jaxb/pom.xml +++ b/services/acquisition/jaxb/pom.xml @@ -9,7 +9,6 @@ 4.0.0 - org.collectionspace.services org.collectionspace.services.acquisition.jaxb services.acquisition.jaxb diff --git a/services/report/client/pom.xml b/services/report/client/pom.xml index b5c239a6c..ac3abe894 100644 --- a/services/report/client/pom.xml +++ b/services/report/client/pom.xml @@ -9,7 +9,6 @@ 4.0.0 - org.collectionspace.services org.collectionspace.services.report.client services.report.client @@ -52,6 +51,16 @@ org.collectionspace.services.person.client ${project.version} + + org.collectionspace.services + org.collectionspace.services.acquisition.client + ${project.version} + + + org.collectionspace.services + org.collectionspace.services.acquisition.jaxb + ${project.version} + org.collectionspace.services org.collectionspace.services.organization.client @@ -84,7 +93,6 @@ commons-httpclient commons-httpclient - 3.1 diff --git a/services/report/client/src/test/java/org/collectionspace/services/client/test/ReportServiceTest.java b/services/report/client/src/test/java/org/collectionspace/services/client/test/ReportServiceTest.java index 6b69486a5..b893e68d4 100644 --- a/services/report/client/src/test/java/org/collectionspace/services/client/test/ReportServiceTest.java +++ b/services/report/client/src/test/java/org/collectionspace/services/client/test/ReportServiceTest.java @@ -22,11 +22,16 @@ */ package org.collectionspace.services.client.test; +import java.math.BigDecimal; import java.util.ArrayList; import java.util.List; +import javax.ws.rs.core.MediaType; import javax.ws.rs.core.Response; +import org.collectionspace.services.acquisition.AcquisitionSourceList; +import org.collectionspace.services.acquisition.AcquisitionsCommon; +import org.collectionspace.services.acquisition.StructuredDateGroup; import org.collectionspace.services.client.AbstractCommonListUtils; import org.collectionspace.services.client.CollectionSpaceClient; import org.collectionspace.services.client.PayloadOutputPart; @@ -35,6 +40,7 @@ import org.collectionspace.services.client.ReportClient; import org.collectionspace.services.common.invocable.InvocationContext; import org.collectionspace.services.report.ReportsCommon; import org.collectionspace.services.jaxb.AbstractCommonList; +import org.collectionspace.services.client.AcquisitionClient; import org.jboss.resteasy.client.ClientResponse; import org.testng.Assert; @@ -62,15 +68,56 @@ public class ReportServiceTest extends AbstractPoxServiceTestImpl sourceList = asl.getAcquisitionSource(); + sourceList.add("The Jim Henson Legacy"); + acquisitionsCommon.setAcquisitionSources(asl); + + StructuredDateGroup sdg = new StructuredDateGroup(); + sdg.setDateDisplayDate("12/12/2012"); + acquisitionsCommon.setAccessionDateGroup(sdg); + + PoxPayloadOut poxPayloadOut = new PoxPayloadOut(AcquisitionClient.SERVICE_PAYLOAD_NAME); + PayloadOutputPart commonPart = poxPayloadOut.addPart(acquisitionClient.getCommonPartName(), acquisitionsCommon); + ClientResponse res = acquisitionClient.create(poxPayloadOut); + try { + setupCreate(); + int statusCode = res.getStatus(); + if (logger.isDebugEnabled()) { + logger.debug(this.getClass().getCanonicalName() + ": HTTP status = " + statusCode); + } + Assert.assertTrue(testRequestType.isValidStatusCode(statusCode), + invalidStatusCodeMessage(testRequestType, statusCode)); + Assert.assertEquals(statusCode, testExpectedStatusCode); + + result = extractId(res); + // Store the IDs from every resource created by tests, + // so they can be deleted after tests have been run. + allResourceIdsCreated.add(result); + } finally { + res.releaseConnection(); + } + + return result; + } + @Test(dataProvider = "testName", dependsOnMethods = {"create"}) public void publishReportInstance(String testName) throws Exception { // Perform setup. - setupCreate(); // Submit the request to the service and store the response. ReportClient client = (ReportClient)this.getClientInstance(); - - createReportInstance() + String reportCsid = createResource(testName, this.getKnowResourceIdentifier()); + String acquisitionCsid = createAquisitionResource(); // // Hard coded for now, but need to create this test in the Integration test area where @@ -79,11 +126,11 @@ public class ReportServiceTest extends AbstractPoxServiceTestImpl res = client.publishReport(reportCsid, invocationContext); int statusCode = res.getStatus(); + setupCreate(); // Check the status code of the response: does it match // the expected response(s)? -- 2.47.3