From f19895a8b8a38d9434afe5a25956743882db5a0b Mon Sep 17 00:00:00 2001 From: Richard Millet Date: Mon, 11 Apr 2011 01:52:06 +0000 Subject: [PATCH] CSPACE-3770: Adding "wf_deleted" query param on GET for most services. If wf_deleted is set to 'false' then a GET will return a HTTP status code of 404 for the resource if the workflow state is 'deleted'. --- .../client/test/AcquisitionServiceTest.java | 9 +- .../acquisition/AcquisitionResource.java | 4 +- .../common/vocabulary/AuthorityResource.java | 7 +- .../services/client/test/BlobServiceTest.java | 9 +- .../client/AbstractPoxServiceClientImpl.java | 5 + .../client/CollectionSpacePoxClient.java | 10 +- .../client/CollectionSpacePoxProxy.java | 6 ++ .../client/test/AbstractServiceTestImpl.java | 30 +++--- .../CollectionObjectResource.java | 4 +- .../services/common/ResourceBase.java | 7 +- .../client/java/RepositoryJavaClientImpl.java | 2 +- .../client/test/ContactServiceTest.java | 8 ++ .../services/contact/ContactResource.java | 4 +- .../client/test/DimensionServiceTest.java | 98 ++++++++++--------- .../services/intake/IntakeResource.java | 4 +- .../client/test/LoaninServiceTest.java | 7 +- .../services/loanin/LoaninResource.java | 4 +- .../client/test/LoanoutServiceTest.java | 5 + .../services/loanout/LoanoutResource.java | 4 +- .../test/LocationAuthorityServiceTest.java | 12 +++ .../client/test/MediaServiceTest.java | 6 ++ .../services/movement/MovementResource.java | 4 +- .../client/test/ObjectExitServiceTest.java | 12 ++- .../client/test/ReportServiceTest.java | 8 +- .../services/report/ReportResource.java | 4 +- .../client/test/VocabularyServiceTest.java | 10 ++ .../client/test/WorkflowServiceTest.java | 62 ++---------- 27 files changed, 211 insertions(+), 134 deletions(-) diff --git a/services/acquisition/client/src/test/java/org/collectionspace/services/client/test/AcquisitionServiceTest.java b/services/acquisition/client/src/test/java/org/collectionspace/services/client/test/AcquisitionServiceTest.java index 799678179..9c9b4349a 100644 --- a/services/acquisition/client/src/test/java/org/collectionspace/services/client/test/AcquisitionServiceTest.java +++ b/services/acquisition/client/src/test/java/org/collectionspace/services/client/test/AcquisitionServiceTest.java @@ -35,14 +35,10 @@ import org.collectionspace.services.jaxb.AbstractCommonList; import org.collectionspace.services.acquisition.AcquisitionsCommon; import org.collectionspace.services.acquisition.AcquisitionDateList; -import org.collectionspace.services.acquisition.AcquisitionFunding; -import org.collectionspace.services.acquisition.AcquisitionFundingList; import org.collectionspace.services.acquisition.AcquisitionSourceList; import org.collectionspace.services.acquisition.OwnerList; import org.jboss.resteasy.client.ClientResponse; -import org.collectionspace.services.jaxb.AbstractCommonList; -import org.jboss.resteasy.plugins.providers.multipart.OutputPart; import org.testng.Assert; import org.testng.annotations.Test; @@ -792,6 +788,11 @@ public class AcquisitionServiceTest extends AbstractServiceTestImpl { // Utility methods used by tests above // --------------------------------------------------------------- + @Override + protected PoxPayloadOut createInstance(String identifier) { + return createAcquisitionInstance(identifier); + } + /** * Creates the acquisition instance. * diff --git a/services/acquisition/service/src/main/java/org/collectionspace/services/acquisition/AcquisitionResource.java b/services/acquisition/service/src/main/java/org/collectionspace/services/acquisition/AcquisitionResource.java index 2351e2dd0..16759e398 100644 --- a/services/acquisition/service/src/main/java/org/collectionspace/services/acquisition/AcquisitionResource.java +++ b/services/acquisition/service/src/main/java/org/collectionspace/services/acquisition/AcquisitionResource.java @@ -170,6 +170,7 @@ public class AcquisitionResource @GET @Path("{csid}") public byte[] getAcquisition( + @Context UriInfo ui, @PathParam("csid") String csid) { if (logger.isDebugEnabled()) { logger.debug("getAcquisition with csid=" + csid); @@ -182,7 +183,8 @@ public class AcquisitionResource } PoxPayloadOut result = null; try { - ServiceContext ctx = createServiceContext(); + MultivaluedMap queryParams = ui.getQueryParameters(); + ServiceContext ctx = createServiceContext(queryParams); DocumentHandler handler = createDocumentHandler(ctx); getRepositoryClient(ctx).get(ctx, csid, handler); result = ctx.getOutput(); diff --git a/services/authority/src/main/java/org/collectionspace/services/common/vocabulary/AuthorityResource.java b/services/authority/src/main/java/org/collectionspace/services/common/vocabulary/AuthorityResource.java index a5fce2fe3..85caae4ea 100644 --- a/services/authority/src/main/java/org/collectionspace/services/common/vocabulary/AuthorityResource.java +++ b/services/authority/src/main/java/org/collectionspace/services/common/vocabulary/AuthorityResource.java @@ -259,11 +259,14 @@ public abstract class AuthorityResource queryParams = ui.getQueryParameters(); Specifier spec = getSpecifier(specifier, "getAuthority", "GET"); - ServiceContext ctx = createServiceContext(); + ServiceContext ctx = createServiceContext(queryParams); DocumentHandler handler = createDocumentHandler(ctx); if(spec.form == SpecifierForm.CSID) { if (logger.isDebugEnabled()) { diff --git a/services/blob/client/src/test/java/org/collectionspace/services/client/test/BlobServiceTest.java b/services/blob/client/src/test/java/org/collectionspace/services/client/test/BlobServiceTest.java index e78a1ca66..b9c732cb0 100644 --- a/services/blob/client/src/test/java/org/collectionspace/services/client/test/BlobServiceTest.java +++ b/services/blob/client/src/test/java/org/collectionspace/services/client/test/BlobServiceTest.java @@ -29,6 +29,7 @@ import javax.ws.rs.core.MediaType; import javax.ws.rs.core.MultivaluedMap; import javax.ws.rs.core.Response; +import org.collectionspace.services.client.BlobProxy; import org.collectionspace.services.client.CollectionSpaceClient; import org.collectionspace.services.client.BlobClient; import org.collectionspace.services.client.PayloadOutputPart; @@ -71,7 +72,7 @@ public class BlobServiceTest extends AbstractServiceTestImpl { } @Override - protected CollectionSpaceClient getClientInstance() { + protected CollectionSpaceClient getClientInstance() { return new BlobClient(); } @@ -336,6 +337,12 @@ public class BlobServiceTest extends AbstractServiceTestImpl { // --------------------------------------------------------------- // Utility methods used by tests above // --------------------------------------------------------------- + + @Override + protected PoxPayloadOut createInstance(String identifier) { + return createBlobInstance(identifier); + } + private PoxPayloadOut createBlobInstance(String exitNumber) { String identifier = "blobNumber-" + exitNumber; BlobsCommon blob = new BlobsCommon(); diff --git a/services/client/src/main/java/org/collectionspace/services/client/AbstractPoxServiceClientImpl.java b/services/client/src/main/java/org/collectionspace/services/client/AbstractPoxServiceClientImpl.java index 7224d5039..5b59e3630 100644 --- a/services/client/src/main/java/org/collectionspace/services/client/AbstractPoxServiceClientImpl.java +++ b/services/client/src/main/java/org/collectionspace/services/client/AbstractPoxServiceClientImpl.java @@ -22,6 +22,11 @@ public abstract class AbstractPoxServiceClientImpl readIncludeDeleted(String csid, Boolean includeDeleted) { + return getProxy().readIncludeDeleted(csid, includeDeleted.toString()); + } + @Override public ClientResponse update(String csid, PoxPayloadOut xmlPayload) { return getProxy().update(csid, xmlPayload.getBytes()); diff --git a/services/client/src/main/java/org/collectionspace/services/client/CollectionSpacePoxClient.java b/services/client/src/main/java/org/collectionspace/services/client/CollectionSpacePoxClient.java index a0dbb2fbc..060b8d2e3 100644 --- a/services/client/src/main/java/org/collectionspace/services/client/CollectionSpacePoxClient.java +++ b/services/client/src/main/java/org/collectionspace/services/client/CollectionSpacePoxClient.java @@ -15,10 +15,18 @@ public interface CollectionSpacePoxClient create(PoxPayloadOut xmlPayload); - + + /* + * GET resource with workflow 'deleted' state + */ public ClientResponse read(String csid); + + public ClientResponse readIncludeDeleted(String csid, Boolean includeDeleted); public ClientResponse update(String csid, PoxPayloadOut xmlPayload); + /* + * GET list with workflow 'deleted' state + */ public ClientResponse readIncludeDeleted(Boolean includeDeleted); } diff --git a/services/client/src/main/java/org/collectionspace/services/client/CollectionSpacePoxProxy.java b/services/client/src/main/java/org/collectionspace/services/client/CollectionSpacePoxProxy.java index bc1630a55..79622d7d1 100644 --- a/services/client/src/main/java/org/collectionspace/services/client/CollectionSpacePoxProxy.java +++ b/services/client/src/main/java/org/collectionspace/services/client/CollectionSpacePoxProxy.java @@ -23,6 +23,12 @@ public interface CollectionSpacePoxProxy extends @Path("/{csid}") ClientResponse read(@PathParam("csid") String csid); + //(R)ead + @GET + @Path("/{csid}") + ClientResponse readIncludeDeleted(@PathParam("csid") String csid, + @QueryParam(WorkflowClient.WORKFLOW_QUERY_NONDELETED) String includeDeleted); + //(U)pdate @PUT @Path("/{csid}") diff --git a/services/client/src/main/java/org/collectionspace/services/client/test/AbstractServiceTestImpl.java b/services/client/src/main/java/org/collectionspace/services/client/test/AbstractServiceTestImpl.java index 1fde7f6a0..dead5ac26 100644 --- a/services/client/src/main/java/org/collectionspace/services/client/test/AbstractServiceTestImpl.java +++ b/services/client/src/main/java/org/collectionspace/services/client/test/AbstractServiceTestImpl.java @@ -655,14 +655,7 @@ public abstract class AbstractServiceTestImpl extends BaseServiceTest implements Assert.assertEquals(updatedWorkflowCommons.getCurrentLifeCycleState(), lifeCycleState); } - protected long readIncludeDeleted(String testName, Boolean includeDeleted) { - long result = 0; - // Perform setup. - setupReadList(); - - // - // Check to see if we have a POX client - // + private CollectionSpacePoxClient assertPoxCandidate() { CollectionSpaceClient clientCandidate = this.getClientInstance(); if (CollectionSpacePoxClient.class.isInstance(clientCandidate) != true) { //FIXME: REM - We should remove this check and instead make CollectionSpaceClient support the readIncludeDeleted() method. String clientCandidateName = "Unknown"; @@ -674,11 +667,18 @@ public abstract class AbstractServiceTestImpl extends BaseServiceTest implements logger.warn(msg); throw new UnsupportedOperationException(); } - + return (CollectionSpacePoxClient)clientCandidate; + } + + protected long readIncludeDeleted(String testName, Boolean includeDeleted) { + long result = 0; + // Perform setup. + setupReadList(); + // // Ask for a list of all resources filtered by the incoming 'includeDeleted' workflow param // - CollectionSpacePoxClient client = (CollectionSpacePoxClient)clientCandidate; + CollectionSpacePoxClient client = assertPoxCandidate(); ClientResponse res = client.readIncludeDeleted(includeDeleted); AbstractCommonList list = res.getEntity(); int statusCode = res.getStatus(); @@ -738,6 +738,15 @@ public abstract class AbstractServiceTestImpl extends BaseServiceTest implements // long updatedTotal = readIncludeDeleted(testName, Boolean.FALSE); Assert.assertEquals(updatedTotal, existingRecords + OBJECTS_TO_CREATE - 1, "Deleted items seem to be returned in list results."); + + // + // Next, test that a GET with WorkflowClient.WORKFLOWSTATE_DELETED query param set to 'false' returns a 404 + // + CollectionSpacePoxClient client = this.assertPoxCandidate(); + ClientResponse res = client.readIncludeDeleted(csid, Boolean.FALSE); + int result = res.getStatus(); + Assert.assertEquals(result, STATUS_NOT_FOUND); + } catch (UnsupportedOperationException e) { logger.warn(this.getClass().getName() + " did not implement createWorkflowTarget() method. No workflow tests performed."); return; @@ -772,7 +781,6 @@ public abstract class AbstractServiceTestImpl extends BaseServiceTest implements /* * Sub-classes must override for the workflow tests. */ - protected PoxPayloadOut createInstance(String identifier) { logger.warn("Sub-class test clients should override this method"); throw new UnsupportedOperationException(); diff --git a/services/collectionobject/service/src/main/java/org/collectionspace/services/collectionobject/CollectionObjectResource.java b/services/collectionobject/service/src/main/java/org/collectionspace/services/collectionobject/CollectionObjectResource.java index d7791c7b6..dacf30e43 100644 --- a/services/collectionobject/service/src/main/java/org/collectionspace/services/collectionobject/CollectionObjectResource.java +++ b/services/collectionobject/service/src/main/java/org/collectionspace/services/collectionobject/CollectionObjectResource.java @@ -184,6 +184,7 @@ public class CollectionObjectResource @GET @Path("{csid}") public byte[] getCollectionObject( + @Context UriInfo ui, @PathParam("csid") String csid) { if (logger.isDebugEnabled()) { logger.debug("getCollectionObject with csid=" + csid); @@ -197,7 +198,8 @@ public class CollectionObjectResource } PoxPayloadOut result = null; try { - ServiceContext ctx = createServiceContext(); + MultivaluedMap queryParams = ui.getQueryParameters(); + ServiceContext ctx = createServiceContext(queryParams); DocumentHandler handler = createDocumentHandler(ctx); getRepositoryClient(ctx).get(ctx, csid, handler); result = ctx.getOutput(); diff --git a/services/common/src/main/java/org/collectionspace/services/common/ResourceBase.java b/services/common/src/main/java/org/collectionspace/services/common/ResourceBase.java index c6a43e101..9b6e6f51f 100644 --- a/services/common/src/main/java/org/collectionspace/services/common/ResourceBase.java +++ b/services/common/src/main/java/org/collectionspace/services/common/ResourceBase.java @@ -192,11 +192,14 @@ extends AbstractMultiPartCollectionSpaceResourceImpl { @GET @Path("{csid}") - public byte[] get(@PathParam("csid") String csid) { + public byte[] get( + @Context UriInfo ui, + @PathParam("csid") String csid) { PoxPayloadOut result = null; ensureCSID(csid, READ); try { - ServiceContext ctx = createServiceContext(); + MultivaluedMap queryParams = ui.getQueryParameters(); + ServiceContext ctx = createServiceContext(queryParams); result = get(csid, ctx);// ==> CALL implementation method, which subclasses may override. if (result == null) { Response response = Response.status(Response.Status.NOT_FOUND).entity( diff --git a/services/common/src/main/java/org/collectionspace/services/nuxeo/client/java/RepositoryJavaClientImpl.java b/services/common/src/main/java/org/collectionspace/services/nuxeo/client/java/RepositoryJavaClientImpl.java index 5324fab52..b4b8ff4ee 100644 --- a/services/common/src/main/java/org/collectionspace/services/nuxeo/client/java/RepositoryJavaClientImpl.java +++ b/services/common/src/main/java/org/collectionspace/services/nuxeo/client/java/RepositoryJavaClientImpl.java @@ -93,7 +93,7 @@ public class RepositoryJavaClientImpl implements RepositoryClient res = client.create(multipart); - - int statusCode = res.getStatus(); - Assert.assertEquals(statusCode, STATUS_CREATED); - - result = extractId(res); - allResourceIdsCreated.add(result); - - return result; - } +// @Override +// protected String createTestObject(String testName) throws Exception { +// String result = null; +// +// DimensionClient client = new DimensionClient(); +// String identifier = createIdentifier(); +// PoxPayloadOut multipart = createDimensionInstance(client.getCommonPartName(), +// identifier); +// ClientResponse res = client.create(multipart); +// +// int statusCode = res.getStatus(); +// Assert.assertEquals(statusCode, STATUS_CREATED); +// +// result = extractId(res); +// allResourceIdsCreated.add(result); +// +// return result; +// } - /* - * This test assumes that no objects exist yet. - * - * http://localhost:8180/cspace-services/intakes?wf_deleted=false - */ - @Test(dataProvider = "testName", dataProviderClass = AbstractServiceTestImpl.class, dependsOnMethods = {"update"}) - public void readWorkflowList(String testName) throws Exception { - // - // Create 3 new objects - // - final int OBJECTS_TOTAL = 3; - for (int i = 0; i < OBJECTS_TOTAL; i++) { - this.createWorkflowTarget(testName); - } - // - // Mark one as soft deleted - // - int currentTotal = allResourceIdsCreated.size(); - String csid = allResourceIdsCreated.get(currentTotal - 1); //0-based index to get the last one added - this.setupUpdate(); - this.updateLifeCycleState(testName, csid, WorkflowClient.WORKFLOWSTATE_DELETED); - // - // Read the list back. The deleted item should not be in the list - // -// int updatedTotal = readIncludeDeleted(testName, Boolean.FALSE); -// Assert.assertEquals(updatedTotal, currentTotal - 1, "Deleted items seem to be returned in list results."); - } +// /* +// * This test assumes that no objects exist yet. +// * +// * http://localhost:8180/cspace-services/intakes?wf_deleted=false +// */ +// @Test(dataProvider = "testName", dataProviderClass = AbstractServiceTestImpl.class, dependsOnMethods = {"update"}) +// public void readWorkflowList(String testName) throws Exception { +// // +// // Create 3 new objects +// // +// final int OBJECTS_TOTAL = 3; +// for (int i = 0; i < OBJECTS_TOTAL; i++) { +// this.createWorkflowTarget(testName); +// } +// // +// // Mark one as soft deleted +// // +// int currentTotal = allResourceIdsCreated.size(); +// String csid = allResourceIdsCreated.get(currentTotal - 1); //0-based index to get the last one added +// this.setupUpdate(); +// this.updateLifeCycleState(testName, csid, WorkflowClient.WORKFLOWSTATE_DELETED); +// // +// // Read the list back. The deleted item should not be in the list +// // +//// int updatedTotal = readIncludeDeleted(testName, Boolean.FALSE); +//// Assert.assertEquals(updatedTotal, currentTotal - 1, "Deleted items seem to be returned in list results."); +// } protected void updateLifeCycleState(String testName, String resourceId, String lifeCycleState) throws Exception { // diff --git a/services/intake/service/src/main/java/org/collectionspace/services/intake/IntakeResource.java b/services/intake/service/src/main/java/org/collectionspace/services/intake/IntakeResource.java index cd90ca77d..1ee1dbee4 100644 --- a/services/intake/service/src/main/java/org/collectionspace/services/intake/IntakeResource.java +++ b/services/intake/service/src/main/java/org/collectionspace/services/intake/IntakeResource.java @@ -172,6 +172,7 @@ public class IntakeResource extends @GET @Path("{csid}") public byte[] getIntake( + @Context UriInfo ui, @PathParam("csid") String csid) { if (logger.isDebugEnabled()) { logger.debug("getIntake with csid=" + csid); @@ -185,7 +186,8 @@ public class IntakeResource extends } PoxPayloadOut result = null; try { - ServiceContext ctx = createServiceContext(); + MultivaluedMap queryParams = ui.getQueryParameters(); + ServiceContext ctx = createServiceContext(queryParams); DocumentHandler handler = createDocumentHandler(ctx); getRepositoryClient(ctx).get(ctx, csid, handler); result = ctx.getOutput(); diff --git a/services/loanin/client/src/test/java/org/collectionspace/services/client/test/LoaninServiceTest.java b/services/loanin/client/src/test/java/org/collectionspace/services/client/test/LoaninServiceTest.java index 0bf6b010a..b8595a3a1 100644 --- a/services/loanin/client/src/test/java/org/collectionspace/services/client/test/LoaninServiceTest.java +++ b/services/loanin/client/src/test/java/org/collectionspace/services/client/test/LoaninServiceTest.java @@ -37,11 +37,9 @@ import org.collectionspace.services.jaxb.AbstractCommonList; import org.collectionspace.services.loanin.LenderGroup; import org.collectionspace.services.loanin.LenderGroupList; import org.collectionspace.services.loanin.LoansinCommon; -//import org.collectionspace.services.loanin.LoansinCommonList; import org.jboss.resteasy.client.ClientResponse; import org.testng.Assert; -//import org.testng.annotations.AfterClass; import org.testng.annotations.Test; import org.slf4j.Logger; @@ -797,6 +795,11 @@ public class LoaninServiceTest extends AbstractServiceTestImpl { return SERVICE_PATH_COMPONENT; } + @Override + protected PoxPayloadOut createInstance(String identifier) { + return createLoaninInstance(identifier); + } + /** * Creates the loanin instance. * diff --git a/services/loanin/service/src/main/java/org/collectionspace/services/loanin/LoaninResource.java b/services/loanin/service/src/main/java/org/collectionspace/services/loanin/LoaninResource.java index 54dcd6931..256bd251e 100644 --- a/services/loanin/service/src/main/java/org/collectionspace/services/loanin/LoaninResource.java +++ b/services/loanin/service/src/main/java/org/collectionspace/services/loanin/LoaninResource.java @@ -180,6 +180,7 @@ public class LoaninResource extends @GET @Path("{csid}") public byte[] getLoanin( + @Context UriInfo ui, @PathParam("csid") String csid) { if (logger.isDebugEnabled()) { logger.debug("getLoanin with csid=" + csid); @@ -193,7 +194,8 @@ public class LoaninResource extends } PoxPayloadOut result = null; try { - ServiceContext ctx = createServiceContext(); + MultivaluedMap queryParams = ui.getQueryParameters(); + ServiceContext ctx = createServiceContext(queryParams); DocumentHandler handler = createDocumentHandler(ctx); getRepositoryClient(ctx).get(ctx, csid, handler); result = ctx.getOutput(); diff --git a/services/loanout/client/src/test/java/org/collectionspace/services/client/test/LoanoutServiceTest.java b/services/loanout/client/src/test/java/org/collectionspace/services/client/test/LoanoutServiceTest.java index 12b144b94..bb3975981 100644 --- a/services/loanout/client/src/test/java/org/collectionspace/services/client/test/LoanoutServiceTest.java +++ b/services/loanout/client/src/test/java/org/collectionspace/services/client/test/LoanoutServiceTest.java @@ -770,6 +770,11 @@ public class LoanoutServiceTest extends AbstractServiceTestImpl { return LoanoutClient.SERVICE_PATH_COMPONENT; } + @Override + protected PoxPayloadOut createInstance(String identifier) { + return createLoanoutInstance(identifier); + } + /** * Creates the loanout instance. * diff --git a/services/loanout/service/src/main/java/org/collectionspace/services/loanout/LoanoutResource.java b/services/loanout/service/src/main/java/org/collectionspace/services/loanout/LoanoutResource.java index 556ea41fb..b27c484e1 100644 --- a/services/loanout/service/src/main/java/org/collectionspace/services/loanout/LoanoutResource.java +++ b/services/loanout/service/src/main/java/org/collectionspace/services/loanout/LoanoutResource.java @@ -174,6 +174,7 @@ public class LoanoutResource extends @GET @Path("{csid}") public byte[] getLoanout( + @Context UriInfo ui, @PathParam("csid") String csid) { if (logger.isDebugEnabled()) { logger.debug("getLoanout with csid=" + csid); @@ -187,7 +188,8 @@ public class LoanoutResource extends } PoxPayloadOut result = null; try { - ServiceContext ctx = createServiceContext(); + MultivaluedMap queryParams = ui.getQueryParameters(); + ServiceContext ctx = createServiceContext(queryParams); DocumentHandler handler = createDocumentHandler(ctx); getRepositoryClient(ctx).get(ctx, csid, handler); result = ctx.getOutput(); diff --git a/services/location/client/src/test/java/org/collectionspace/services/client/test/LocationAuthorityServiceTest.java b/services/location/client/src/test/java/org/collectionspace/services/client/test/LocationAuthorityServiceTest.java index 0507a4276..81b3babab 100644 --- a/services/location/client/src/test/java/org/collectionspace/services/client/test/LocationAuthorityServiceTest.java +++ b/services/location/client/src/test/java/org/collectionspace/services/client/test/LocationAuthorityServiceTest.java @@ -153,6 +153,18 @@ public class LocationAuthorityServiceTest extends AbstractServiceTestImpl { //FI return response.getEntity(LocationsCommonList.class); } + @Override + protected PoxPayloadOut createInstance(String identifier) { + LocationAuthorityClient client = new LocationAuthorityClient(); + String shortId = createIdentifier(); + String displayName = "displayName-" + shortId; + String baseRefName = LocationAuthorityClientUtils.createLocationAuthRefName(shortId, null); + PoxPayloadOut multipart = + LocationAuthorityClientUtils.createLocationAuthorityInstance( + displayName, shortId, client.getCommonPartName()); + return multipart; + } + // --------------------------------------------------------------- // CRUD tests : CREATE tests // --------------------------------------------------------------- diff --git a/services/media/client/src/test/java/org/collectionspace/services/client/test/MediaServiceTest.java b/services/media/client/src/test/java/org/collectionspace/services/client/test/MediaServiceTest.java index 62f228584..a3d87e112 100644 --- a/services/media/client/src/test/java/org/collectionspace/services/client/test/MediaServiceTest.java +++ b/services/media/client/src/test/java/org/collectionspace/services/client/test/MediaServiceTest.java @@ -366,6 +366,12 @@ public class MediaServiceTest extends AbstractServiceTestImpl { Assert.assertEquals(statusCode, EXPECTED_STATUS); } + @Override + protected PoxPayloadOut createInstance(String identifier) { + return createMediaInstance(identifier); + } + + // --------------------------------------------------------------- // Utility methods used by tests above // --------------------------------------------------------------- diff --git a/services/movement/service/src/main/java/org/collectionspace/services/movement/MovementResource.java b/services/movement/service/src/main/java/org/collectionspace/services/movement/MovementResource.java index ad709a4f7..308d6ec71 100644 --- a/services/movement/service/src/main/java/org/collectionspace/services/movement/MovementResource.java +++ b/services/movement/service/src/main/java/org/collectionspace/services/movement/MovementResource.java @@ -182,6 +182,7 @@ public class MovementResource extends AbstractMultiPartCollectionSpaceResourceIm @GET @Path("{csid}") public byte[] getMovement( + @Context UriInfo ui, @PathParam("csid") String csid) { if (logger.isDebugEnabled()) { logger.debug("getMovement with csid=" + csid); @@ -194,7 +195,8 @@ public class MovementResource extends AbstractMultiPartCollectionSpaceResourceIm } PoxPayloadOut result = null; try { - ServiceContext ctx = createServiceContext(); + MultivaluedMap queryParams = ui.getQueryParameters(); + ServiceContext ctx = createServiceContext(queryParams); DocumentHandler handler = createDocumentHandler(ctx); getRepositoryClient(ctx).get(ctx, csid, handler); result = ctx.getOutput(); diff --git a/services/objectexit/client/src/test/java/org/collectionspace/services/client/test/ObjectExitServiceTest.java b/services/objectexit/client/src/test/java/org/collectionspace/services/client/test/ObjectExitServiceTest.java index de4564317..b886aedae 100644 --- a/services/objectexit/client/src/test/java/org/collectionspace/services/client/test/ObjectExitServiceTest.java +++ b/services/objectexit/client/src/test/java/org/collectionspace/services/client/test/ObjectExitServiceTest.java @@ -27,8 +27,8 @@ import javax.ws.rs.core.MediaType; import javax.ws.rs.core.Response; import org.collectionspace.services.client.CollectionSpaceClient; -import org.collectionspace.services.client.ContactClient; import org.collectionspace.services.client.ObjectExitClient; +import org.collectionspace.services.client.ObjectExitProxy; import org.collectionspace.services.client.PayloadOutputPart; import org.collectionspace.services.client.PoxPayloadIn; import org.collectionspace.services.client.PoxPayloadOut; @@ -37,7 +37,6 @@ import org.collectionspace.services.objectexit.ObjectexitCommon; import org.jboss.resteasy.client.ClientResponse; -import org.jboss.resteasy.plugins.providers.multipart.OutputPart; import org.testng.Assert; import org.testng.annotations.Test; @@ -67,7 +66,7 @@ public class ObjectExitServiceTest extends AbstractServiceTestImpl { } @Override - protected CollectionSpaceClient getClientInstance() { + protected CollectionSpaceClient getClientInstance() { return new ObjectExitClient(); } @@ -254,6 +253,13 @@ public class ObjectExitServiceTest extends AbstractServiceTestImpl { // --------------------------------------------------------------- // Utility methods used by tests above // --------------------------------------------------------------- + + @Override + protected PoxPayloadOut createInstance(String identifier) { + ObjectExitClient client = new ObjectExitClient(); + return createObjectExitInstance(identifier); + } + private PoxPayloadOut createObjectExitInstance(String exitNumber) { String identifier = "objectexitNumber-" + exitNumber; ObjectexitCommon objectexit = new ObjectexitCommon(); 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 3b5fbc9dd..220a318d3 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 @@ -80,6 +80,12 @@ public class ReportServiceTest extends AbstractServiceTestImpl { return response.getEntity(ReportsCommonList.class); } +// @Override +// protected PoxPayloadOut createInstance(String identifier) { +// PoxPayloadOut multipart = createReportInstance(identifier); +// return multipart; +// } + // --------------------------------------------------------------- // CRUD tests : CREATE tests // --------------------------------------------------------------- @@ -469,7 +475,7 @@ public class ReportServiceTest extends AbstractServiceTestImpl { */ @Override @Test(dataProvider = "testName", dataProviderClass = AbstractServiceTestImpl.class, - dependsOnMethods = {"create", "readList", "testSubmitRequest", "update"}) + dependsOnMethods = {"create", "readList", "testSubmitRequest", "update", "readWorkflow"}) public void delete(String testName) throws Exception { if (logger.isDebugEnabled()) { diff --git a/services/report/service/src/main/java/org/collectionspace/services/report/ReportResource.java b/services/report/service/src/main/java/org/collectionspace/services/report/ReportResource.java index ae63afe19..80db4a2be 100644 --- a/services/report/service/src/main/java/org/collectionspace/services/report/ReportResource.java +++ b/services/report/service/src/main/java/org/collectionspace/services/report/ReportResource.java @@ -186,6 +186,7 @@ public class ReportResource extends @GET @Path("{csid}") public byte[] getReport( + @Context UriInfo ui, @PathParam("csid") String csid) { if (logger.isDebugEnabled()) { logger.debug("getReport with csid=" + csid); @@ -199,7 +200,8 @@ public class ReportResource extends } PoxPayloadOut result = null; try { - ServiceContext ctx = createServiceContext(); + MultivaluedMap queryParams = ui.getQueryParameters(); + ServiceContext ctx = createServiceContext(queryParams); DocumentHandler handler = createDocumentHandler(ctx); getRepositoryClient(ctx).get(ctx, csid, handler); result = ctx.getOutput(); diff --git a/services/vocabulary/client/src/test/java/org/collectionspace/services/client/test/VocabularyServiceTest.java b/services/vocabulary/client/src/test/java/org/collectionspace/services/client/test/VocabularyServiceTest.java index f5bc4b6b3..a65b361d8 100644 --- a/services/vocabulary/client/src/test/java/org/collectionspace/services/client/test/VocabularyServiceTest.java +++ b/services/vocabulary/client/src/test/java/org/collectionspace/services/client/test/VocabularyServiceTest.java @@ -100,6 +100,16 @@ public class VocabularyServiceTest extends AbstractServiceTestImpl { return response.getEntity(VocabulariesCommonList.class); } + @Override + protected PoxPayloadOut createInstance(String identifier) { + VocabularyClient client = new VocabularyClient(); + String displayName = "displayName-" + identifier; + PoxPayloadOut multipart = VocabularyClientUtils.createEnumerationInstance( + displayName, identifier, client.getCommonPartName()); + return multipart; + } + + // --------------------------------------------------------------- // CRUD tests : CREATE tests // --------------------------------------------------------------- diff --git a/services/workflow/client/src/test/java/org/collectionspace/services/client/test/WorkflowServiceTest.java b/services/workflow/client/src/test/java/org/collectionspace/services/client/test/WorkflowServiceTest.java index 63e4967f7..5b42dc7f4 100644 --- a/services/workflow/client/src/test/java/org/collectionspace/services/client/test/WorkflowServiceTest.java +++ b/services/workflow/client/src/test/java/org/collectionspace/services/client/test/WorkflowServiceTest.java @@ -78,57 +78,6 @@ public class WorkflowServiceTest extends AbstractServiceTestImpl { return response.getEntity(AbstractCommonList.class); } -// @Override -// @Test(dataProvider = "testName", dataProviderClass = AbstractServiceTestImpl.class) -// public void create(String testName) throws Exception { -// logger.debug(testBanner(testName, CLASS_NAME)); -// setupCreate(); -// WorkflowClient client = new WorkflowClient(); -// PoxPayloadOut multipart = createObjectExitInstance(createIdentifier()); -// ClientResponse res = client.create(multipart); -// assertStatusCode(res, testName); -// if (knownResourceId == null) { -// knownResourceId = extractId(res); // Store the ID returned from the first resource created for additional tests below. -// logger.debug(testName + ": knownResourceId=" + knownResourceId); -// } -// allResourceIdsCreated.add(extractId(res)); // Store the IDs from every resource created by tests so they can be deleted after tests have been run. -// } - - - /* - * Create a Dimension instance to use as our test target. - */ - @Override - protected String createWorkflowTarget(String testName) throws Exception { - String result = null; - - result = createTestObject(testName); - - return result; - } - - /* - * Create a Dimension instance to use as our test target. - */ - protected String createTestObject(String testName) throws Exception { - String result = null; - - logger.debug(testBanner(testName, CLASS_NAME)); - setupCreate(); - DimensionClient client = new DimensionClient(); - PoxPayloadOut multipart = createDimensionInstance(createIdentifier()); - ClientResponse res = client.create(multipart); - assertStatusCode(res, testName); - if (knownResourceId == null) { - knownResourceId = extractId(res); // Store the ID returned from the first resource created for additional tests below. - logger.debug(testName + ": knownResourceId=" + knownResourceId); - } - result = extractId(res); - allResourceIdsCreated.add(result); // Store the IDs from every resource created by tests so they can be deleted after tests have been run. - - return result; - } - @Override public void createList(String testName) throws Exception { //empty N/A @@ -274,6 +223,12 @@ public class WorkflowServiceTest extends AbstractServiceTestImpl { // --------------------------------------------------------------- // Utility methods used by tests above // --------------------------------------------------------------- + + @Override + protected PoxPayloadOut createInstance(String identifier) { + return createDimensionInstance(identifier); + } + private PoxPayloadOut createDimensionInstance(String dimensionValue) { String value = "dimensionValue-" + dimensionValue; String dimensionsCommonPartName = new DimensionClient().getCommonPartName(); @@ -294,7 +249,10 @@ public class WorkflowServiceTest extends AbstractServiceTestImpl { @Override @Test(dataProvider = "testName", dataProviderClass = AbstractServiceTestImpl.class) public void create(String testName) throws Exception { - this.createTestObject(testName); + String csid = this.createTestObject(testName); + if (this.knownResourceId == null) { + this.knownResourceId = csid; + } } -- 2.47.3