From: Aron Roberts Date: Fri, 12 Nov 2010 22:55:23 +0000 (+0000) Subject: CSPACE-3135: Added three fields in Loan Out records to a repeatable Loaned Object... X-Git-Url: https://git.aero2k.de/?a=commitdiff_plain;h=026fcc9a844a3002f121f3df966d4ec9a4cc38ee;p=tmp%2Fjakarta-migration.git CSPACE-3135: Added three fields in Loan Out records to a repeatable Loaned Object Status group. --- diff --git a/services/loanout/3rdparty/nuxeo-platform-cs-loanout/src/main/resources/schemas/loansout_common.xsd b/services/loanout/3rdparty/nuxeo-platform-cs-loanout/src/main/resources/schemas/loansout_common.xsd index b518cbb7e..428076085 100644 --- a/services/loanout/3rdparty/nuxeo-platform-cs-loanout/src/main/resources/schemas/loansout_common.xsd +++ b/services/loanout/3rdparty/nuxeo-platform-cs-loanout/src/main/resources/schemas/loansout_common.xsd @@ -27,12 +27,8 @@ - - - - - - + + @@ -40,5 +36,19 @@ + + + + + + + + + + + + + + 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 22d065384..e1a9d9008 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 @@ -29,6 +29,8 @@ import javax.ws.rs.core.Response; import org.collectionspace.services.client.CollectionSpaceClient; import org.collectionspace.services.client.LoanoutClient; import org.collectionspace.services.jaxb.AbstractCommonList; +import org.collectionspace.services.loanout.LoanedObjectStatusGroup; +import org.collectionspace.services.loanout.LoanedObjectStatusGroupList; import org.collectionspace.services.loanout.LoansoutCommon; import org.collectionspace.services.loanout.LoansoutCommonList; @@ -298,6 +300,15 @@ public class LoanoutServiceTest extends AbstractServiceTestImpl { LoansoutCommon loanout = (LoansoutCommon) extractPart(input, client.getCommonPartName(), LoansoutCommon.class); Assert.assertNotNull(loanout); + Assert.assertNotNull(loanout.getLoanOutNumber()); + LoanedObjectStatusGroupList statusGroupList = loanout.getLoanedObjectStatusGroupList(); + Assert.assertNotNull(statusGroupList); + List statusGroups = statusGroupList.getLoanedObjectStatusGroup(); + Assert.assertNotNull(statusGroups); + Assert.assertTrue(statusGroups.size() > 0); + LoanedObjectStatusGroup statusGroup = statusGroups.get(0); + Assert.assertNotNull(statusGroup); + Assert.assertNotNull(statusGroup.getLoanedObjectStatus()); } // Failure outcomes @@ -426,6 +437,19 @@ public class LoanoutServiceTest extends AbstractServiceTestImpl { logger.debug("to be updated object"); logger.debug(objectAsXmlString(loanout, LoansoutCommon.class)); } + LoanedObjectStatusGroupList statusGroupList = loanout.getLoanedObjectStatusGroupList(); + Assert.assertNotNull(statusGroupList); + List statusGroups = statusGroupList.getLoanedObjectStatusGroup(); + Assert.assertNotNull(statusGroups); + Assert.assertTrue(statusGroups.size() > 0); + LoanedObjectStatusGroup statusGroup = statusGroups.get(0); + Assert.assertNotNull(statusGroup); + String loanedObjectStatus = statusGroup.getLoanedObjectStatus(); + Assert.assertNotNull(loanedObjectStatus); + String updatedLoanedObjectStatus = "updated-" + loanedObjectStatus; + statusGroups.get(0).setLoanedObjectStatus(updatedLoanedObjectStatus); + loanout.setLoanedObjectStatusGroupList(statusGroupList); + // Submit the request to the service and store the response. MultipartOutput output = new MultipartOutput(); OutputPart commonPart = output.addPart(loanout, MediaType.APPLICATION_XML_TYPE); @@ -452,6 +476,16 @@ public class LoanoutServiceTest extends AbstractServiceTestImpl { loanout.getLoanReturnDate(), "Data in updated object did not match submitted data."); + statusGroupList = updatedLoanout.getLoanedObjectStatusGroupList(); + Assert.assertNotNull(statusGroupList); + statusGroups = statusGroupList.getLoanedObjectStatusGroup(); + Assert.assertNotNull(statusGroups); + Assert.assertTrue(statusGroups.size() > 0); + Assert.assertNotNull(statusGroups.get(0)); + Assert.assertEquals(updatedLoanedObjectStatus, + statusGroups.get(0).getLoanedObjectStatus(), + "Data in updated object did not match submitted data."); + } // Failure outcomes @@ -734,6 +768,13 @@ public class LoanoutServiceTest extends AbstractServiceTestImpl { loanout.setBorrowersContact( "urn:cspace:org.collectionspace.demo:personauthority:name(TestPersonAuth):person:name(Chris Contact)'Chris Contact'"); loanout.setLoanPurpose("Allow people in cold climes to share the magic of Surfboards of the 1960s."); + LoanedObjectStatusGroupList statusGroupList = new LoanedObjectStatusGroupList(); + List statusGroups = statusGroupList.getLoanedObjectStatusGroup(); + LoanedObjectStatusGroup statusGroup = new LoanedObjectStatusGroup(); + statusGroup.setLoanedObjectStatus("returned"); + statusGroup.setLoanedObjectStatusNote("Left under the front mat."); + statusGroups.add(statusGroup); + loanout.setLoanedObjectStatusGroupList(statusGroupList); MultipartOutput multipart = new MultipartOutput(); OutputPart commonPart = multipart.addPart(loanout, MediaType.APPLICATION_XML_TYPE); diff --git a/services/loanout/jaxb/src/main/resources/loansout-common.xsd b/services/loanout/jaxb/src/main/resources/loansout-common.xsd index df1b4a654..16147eaa7 100644 --- a/services/loanout/jaxb/src/main/resources/loansout-common.xsd +++ b/services/loanout/jaxb/src/main/resources/loansout-common.xsd @@ -39,12 +39,8 @@ - - - - - - + + @@ -54,6 +50,20 @@ + + + + + + + + + + + + + +