<?xml version="1.0" encoding="utf-8"?>
<imports>
- <import service="ObjectExit" type="ObjectExit">
- <schema xmlns:objectexit_common="http://collectionspace.org/services/objectexit"
- name="objectexit_common">
- <exitNote>Sebastián & Barnes</exitNote>
- <exitNumber>OE2010.2</exitNumber>
- </schema>
- </import>
+ <import service="ObjectExit" type="ObjectExit">
+ <schema xmlns:objectexit_common="http://collectionspace.org/services/objectexit"
+ name="objectexit_common">
+ <exitNote>This is an exit note.</exitNote>
+ <exitNumber>OE-IMPORT-TEST-1999.3</exitNumber>
+ </schema>
+ </import>
+ <import service="ObjectExit" type="ObjectExit">
+ <schema xmlns:objectexit_common="http://collectionspace.org/services/objectexit"
+ name="objectexit_common">
+ <exitNote>This is another exit note.</exitNote>
+ <exitNumber>OE-IMPORT-TEST-1999.4</exitNumber>
+ </schema>
+ </import>
+ <import service="Media" type="Media">
+ <schema xmlns:media_common="http://collectionspace.org/services/media/" name="media_common">
+ <media_common:dateGroupList>
+ <media_common:dateGroup>
+ <media_common:dateEarliestSingleQualifier/>
+ <media_common:scalarValuesComputed>true</media_common:scalarValuesComputed>
+ <media_common:dateLatestYear>1999</media_common:dateLatestYear>
+ <media_common:dateLatestDay/>
+ <media_common:dateAssociation/>
+ <media_common:dateEarliestSingleEra/>
+ <media_common:dateDisplayDate/>
+ <media_common:dateEarliestSingleCertainty/>
+ <media_common:dateLatestEra/>
+ <media_common:dateEarliestSingleQualifierValue/>
+ <media_common:dateLatestCertainty/>
+ <media_common:dateEarliestSingleYear/>
+ <media_common:dateLatestQualifier/>
+ <media_common:dateLatestQualifierValue/>
+ <media_common:dateEarliestSingleQualifierUnit/>
+ <media_common:datePeriod/>
+ <media_common:dateEarliestScalarValue/>
+ <media_common:dateLatestMonth/>
+ <media_common:dateNote/>
+ <media_common:dateLatestScalarValue/>
+ <media_common:dateLatestQualifierUnit/>
+ <media_common:dateEarliestSingleDay/>
+ <media_common:dateEarliestSingleMonth/>
+ </media_common:dateGroup>
+ </media_common:dateGroupList>
+ <media_common:languageList>
+ <media_common:language>eng</media_common:language>
+ </media_common:languageList>
+ <media_common:measuredPartGroupList>
+ <media_common:measuredPartGroup>
+ <media_common:dimensionSummary/>
+ <media_common:measuredPart/>
+ <media_common:dimensionSubGroupList>
+ <media_common:dimensionSubGroup>
+ <media_common:dimension/>
+ <media_common:measuredBy/>
+ <media_common:valueDate/>
+ <media_common:measurementUnit/>
+ <media_common:value>42</media_common:value>
+ <media_common:dimensionNote/>
+ <media_common:valueQualifier/>
+ <media_common:measurementMethod/>
+ </media_common:dimensionSubGroup>
+ </media_common:dimensionSubGroupList>
+ </media_common:measuredPartGroup>
+ </media_common:measuredPartGroupList>
+ <media_common:identificationNumber>MH-IMPORT-TEST-1999.1</media_common:identificationNumber>
+ </schema>
+ </import>
</imports>
<?xml version="1.0" encoding="utf-8"?>
<imports>
- <import service="ObjectExit" type="ObjectExit">
- <schema xmlns:objectexit_common="http://collectionspace.org/services/objectexit"
- name="objectexit_common">
- <exitNote>Sebastián & Barnes</exitNote>
- <exitNumber>OE2010.2</exitNumber>
- </schema>
- </import>
+ <import service="ObjectExit" type="ObjectExit">
+ <schema xmlns:objectexit_common="http://collectionspace.org/services/objectexit"
+ name="objectexit_common">
+ <exitNote>
+ "This sentence is wrapped in quotation marks (double quotes)."
+ "This sentence is wrapped in quotation marks (double quotes) as XML entities."
+ 'This sentence is wrapped in apostrophes (single quotes).'
+ 'This sentence is wrapped in apostrophes (single quotes) as XML entities.'
+ This sentence has a "quoted" segment & an ampersand (as an XML entity).
+ "This sentence has a "quoted" segment; & an ampersand (as an XML entity), and is wrapped in quotation marks."
+ <There are angle brackets around me, as XML entities.>
+
+ An XML comment follows on the next line:
+ <!-- This is an XML comment -->
+
+ [there are square brackets around me]
+ {there are curly braces around me}
+
+ The text which follows a backquote: Hawai`i
+ The text which follows contains a number sign (aka hash mark, pound sign): #20
+ The text which follows contains reverse solidus (aka backslash) characters and a colon: c:\mydocs\
+ The text which follows contains doubled reverse solidus (backslash) characters: \\mydocs
+ The text which follows contains a reverse solidus (backslash) followed by a solidus (aka forward slash): \/
+ </exitNote>
+ <exitNumber>OE-IMPORT-TEST-1999.5</exitNumber>
+ </schema>
+ </import>
</imports>
<import service="ObjectExit" type="ObjectExit">
<schema xmlns:objectexit_common="http://collectionspace.org/services/objectexit"
name="objectexit_common">
- <exitNote>Sebastián & Barnes</exitNote>
- <exitNumber>OE2010.2</exitNumber>
+ <exitNote>This is an exit note written by Sebastián (a-acute accent) and Barnes,
+which includes a pleasant façade (c-cedilla) and this cast of additional characters:
+Δ : Greek capital letter Delta (U+0394)
+Ж : Cyrillic capital letter Zhe with breve (U+04C1)
+Ŵ : Latin capital letter W with circumflex (U+0174)
+Ω : Greek capital letter Omega (U+03A9)
+月 : Han (CJK) character 'moon; month' ((U+6708)</exitNote>
+ <exitNumber>OE-IMPORT-TEST-1999.2</exitNumber>
</schema>
</import>
</imports>
<?xml version="1.0" encoding="utf-8"?>
<imports>
- <import service="ObjectExit" type="ObjectExit">
- <schema xmlns:objectexit_common="http://collectionspace.org/services/objectexit"
- name="objectexit_common">
- <exitNote>Sebastián & Barnes</exitNote>
- <exitNumber>OE2010.2</exitNumber>
- </schema>
- </import>
+ <import service="ObjectExit" type="ObjectExit">
+ <schema xmlns:objectexit_common="http://collectionspace.org/services/objectexit"
+ name="objectexit_common">
+ <exitNote>This is an exit note.</exitNote>
+ <exitNumber>OE-IMPORT-TEST-1999.1</exitNumber>
+ </schema>
+ </import>
</imports>
<testGroup ID="importsTestGroup" autoDeletePOSTS="true">
- <test ID="import-post">
+ <!-- Import a single ObjectExit record -->
+ <test ID="import-objectexit">
<expectedCodes>200</expectedCodes>
<method>POST</method>
<uri>/cspace-services/imports</uri>
- <filename>imports/import-1objectexit-post.xml</filename>
+ <filename>imports/import-objectexit.xml</filename>
<response>
<expected level="TEXT" />
- <filename>imports/res/import-1objectexit-post.res.xml</filename>
+ <filename>imports/res/import-objectexit.res.xml</filename>
+ </response>
+ </test>
+
+ <!--
+ Import a single ObjectExit record, at least one of whose fields
+ contains a set of UTF-8 characters outside the USASCII range.
+ (See CSPACE-3923 and CSPACE-4866.)
+ -->
+ <test ID="import-objectexit-utf8">
+ <expectedCodes>200</expectedCodes>
+ <method>POST</method>
+ <uri>/cspace-services/imports</uri>
+ <filename>imports/import-objectexit-utf8.xml</filename>
+ <response>
+ <expected level="TEXT" />
+ <filename>imports/res/import-objectexit.res.xml</filename>
</response>
</test>
+ <!--
+ Import a single ObjectExit record, at least one of whose fields
+ contains a set of special characters defined in the
+ "Special Characters and Formatting - QA Test Plan"
+ http://wiki.collectionspace.org/x/A4AjB
+ -->
+ <test ID="import-objectexit-utf8">
+ <expectedCodes>200</expectedCodes>
+ <method>POST</method>
+ <uri>/cspace-services/imports</uri>
+ <filename>imports/import-objectexit-specialchars.xml</filename>
+ <response>
+ <expected level="TEXT" />
+ <filename>imports/res/import-objectexit.res.xml</filename>
+ </response>
+ </test>
+
+ <!--
+ Import a mixed set of records, containing of two (2) Object Exit
+ records and one (1) Media record. (The latter also includes
+ (optional) namespace prefixes on its child elements, as an
+ additional variation.)
+ -->
+ <test ID="import-objectexit-media">
+ <expectedCodes>200</expectedCodes>
+ <method>POST</method>
+ <uri>/cspace-services/imports</uri>
+ <filename>imports/import-objectexit-media.xml</filename>
+ <response>
+ <expected level="TEXT" />
+ <filename>imports/res/import-objectexit-media.res.xml</filename>
+ </response>
+ </test>
+
+
+ <!-- FIXME: Add test with special chars in request payloads -->
+ <!-- (CSPACE-3923), via each imports path -->
+
+ <!-- FIXME: Add tests with invalid payloads, via each imports path -->
+
<!-- FIXME: Add forms-based import test -->
<!--
<test ID="import-post-form">
</test>
-->
- <!-- FIXME: Add tests with non-UTF-8 chars in request payloads -->
- <!-- (CSPACE-3923 and see also CSPACE-4866), via each imports path -->
-
- <!-- FIXME: Add test with special chars in request payloads -->
- <!-- (CSPACE-3923), via each imports path -->
-
- <!-- FIXME: Add tests with invalid payloads, via each imports path -->
-
</testGroup>
</xmlReplay>
<?xml version="1.0"?>
<import>
- <totalRecordsImported>1</totalRecordsImported>
+ <totalRecordsImported>3</totalRecordsImported>
+ <numRecordsImported>
+ <docType>ObjectExit</docType>
+ <numRecords>2</numRecords>
+ </numRecordsImported>
+ <numRecordsImported>
+ <docType>Media</docType>
+ <numRecords>1</numRecords>
+ </numRecordsImported>
</import>
<?xml version="1.0"?>
<import>
<totalRecordsImported>1</totalRecordsImported>
+ <numRecordsImported>
+ <docType>ObjectExit</docType>
+ <numRecords>1</numRecords>
+ </numRecordsImported>
</import>