<method>DELETE</method>
<uri>/cspace-services/objectexit/${importObjectExitWithDocID.recordCSID}</uri>
</test>
+
+ <!--
+ Import a record containing dollar sign and backslash character(s).
+ (See CSPACE-3917.)
+ -->
+ <test ID="importObjectExitWithDollarSign">
+ <expectedCodes>200</expectedCodes>
+ <method>POST</method>
+ <uri>/cspace-services/imports</uri>
+ <filename>imports/import-objectexit-dollarsign.xml</filename>
+ <response>
+ <expected level="TEXT" />
+ <filename>imports/res/import-objectexit.res.xml</filename>
+ </response>
+ </test>
+ <test ID="verifyObjectExitWithDollarSign">
+ <expectedCodes>200</expectedCodes>
+ <method>GET</method>
+ <uri>/cspace-services/objectexit/${importObjectExitWithDollarSign.got("//csid")}</uri>
+ <response>
+ <expected level="ADDOK" />
+ <filename>imports/res/import-objectexit-dollarsign.res.xml</filename>
+ <label>objectexit_common</label>
+ </response>
+ </test>
+ <test ID="deleteObjectExitWithDollarSign">
+ <expectedCodes>200</expectedCodes>
+ <method>DELETE</method>
+ <uri>/cspace-services/objectexit/${importObjectExitWithDollarSign.got("//csid")}</uri>
+ </test>
</testGroup>
* @return the expanded template.
*/
public static String searchAndReplaceVar(String source, String theVar, String replace){
- return Tools.searchAndReplace(source, var(theVar), replace);
+ return Tools.searchAndReplaceWithQuoteReplacement(source, var(theVar), replace);
}
public static String doOneService(String tenantId, String outDir, String partTmpl, String wrapperTmpl,
} else {
docID = UUID.randomUUID().toString();
}
- String part = Tools.searchAndReplace(partTmpl, var("docID"), docID);
+ String part = searchAndReplaceVar(partTmpl, "docID", docID);
- wrapperTmpl = Tools.searchAndReplace(wrapperTmpl, var("Schema"), part);
- wrapperTmpl = Tools.searchAndReplace(wrapperTmpl, var("docID"), docID);
- wrapperTmpl = Tools.searchAndReplace(wrapperTmpl, var("tenantID"), tenantId);
- wrapperTmpl = Tools.searchAndReplace(wrapperTmpl, var("ServiceType"), SERVICE_TYPE);
- wrapperTmpl = Tools.searchAndReplace(wrapperTmpl, var("ServiceName"), SERVICE_NAME);
+ wrapperTmpl = searchAndReplaceVar(wrapperTmpl, "Schema", part);
+ wrapperTmpl = searchAndReplaceVar(wrapperTmpl, "docID", docID);
+ wrapperTmpl = searchAndReplaceVar(wrapperTmpl, "tenantID", tenantId);
+ wrapperTmpl = searchAndReplaceVar(wrapperTmpl, "ServiceType", SERVICE_TYPE);
+ wrapperTmpl = searchAndReplaceVar(wrapperTmpl, "ServiceName", SERVICE_NAME);
//TODO: set timestamp via creating a ${created} variable.
String nowTime = GregorianCalendarDateTimeUtils.timestampUTC();
- wrapperTmpl = Tools.searchAndReplace(wrapperTmpl, var("createdDate"), nowTime);
- wrapperTmpl = Tools.searchAndReplace(wrapperTmpl, var("updatedDate"), nowTime);
+ wrapperTmpl = searchAndReplaceVar(wrapperTmpl, "createdDate", nowTime);
+ wrapperTmpl = searchAndReplaceVar(wrapperTmpl, "updatedDate", nowTime);
String serviceDir = outDir+'/'+docID;
FileTools.saveFile(serviceDir, "document.xml", wrapperTmpl, true/*true=create parent dirs*/);