in src/main/java/org/apache/sling/launchpad/webapp/integrationtest/servlets/post/PostServletMoveTest.java [217:276]
public void testMoveNodeMultipleSourceValid() throws IOException {
final String testPath = TEST_BASE_PATH + "/mvmult/"
+ System.currentTimeMillis();
final String testRoot = testClient.createNode(HTTP_BASE_URL + testPath,
null);
// create multiple source nodes
Map<String, String> props = new HashMap<String, String>();
props.put("text", "Hello");
testClient.createNode(HTTP_BASE_URL + testPath + "/src1", props);
testClient.createNode(HTTP_BASE_URL + testPath + "/src2", props);
testClient.createNode(HTTP_BASE_URL + testPath + "/src3", props);
testClient.createNode(HTTP_BASE_URL + testPath + "/src4", props);
// move the src? nodes
List<NameValuePair> nvPairs = new ArrayList<NameValuePair>();
nvPairs.add(new NameValuePair(SlingPostConstants.RP_OPERATION,
SlingPostConstants.OPERATION_MOVE));
nvPairs.add(new NameValuePair(SlingPostConstants.RP_DEST, testPath
+ "/dest/"));
nvPairs.add(new NameValuePair(SlingPostConstants.RP_APPLY_TO, testPath
+ "/src1"));
nvPairs.add(new NameValuePair(SlingPostConstants.RP_APPLY_TO, testPath
+ "/src2"));
nvPairs.add(new NameValuePair(SlingPostConstants.RP_APPLY_TO, testPath
+ "/src3"));
nvPairs.add(new NameValuePair(SlingPostConstants.RP_APPLY_TO, testPath
+ "/src4"));
assertPostStatus(testRoot, HttpServletResponse.SC_PRECONDITION_FAILED,
nvPairs, "Expecting Move Failure: dest parent does not exist");
// create destination parent
testClient.createNode(HTTP_BASE_URL + testPath + "/dest", props);
// now dest exists, so we expect success
assertPostStatus(testRoot, HttpServletResponse.SC_OK, nvPairs,
"Expecting Move Success");
// assert existence of the src?/text properties
assertHttpStatus(HTTP_BASE_URL + testPath + "/dest/src1/text",
HttpServletResponse.SC_OK);
assertHttpStatus(HTTP_BASE_URL + testPath + "/dest/src2/text",
HttpServletResponse.SC_OK);
assertHttpStatus(HTTP_BASE_URL + testPath + "/dest/src3/text",
HttpServletResponse.SC_OK);
assertHttpStatus(HTTP_BASE_URL + testPath + "/dest/src4/text",
HttpServletResponse.SC_OK);
// assert non-existence of src?
assertHttpStatus(HTTP_BASE_URL + testPath + "/src1.html",
HttpServletResponse.SC_NOT_FOUND);
assertHttpStatus(HTTP_BASE_URL + testPath + "/src2.html",
HttpServletResponse.SC_NOT_FOUND);
assertHttpStatus(HTTP_BASE_URL + testPath + "/src3.html",
HttpServletResponse.SC_NOT_FOUND);
assertHttpStatus(HTTP_BASE_URL + testPath + "/src4.html",
HttpServletResponse.SC_NOT_FOUND);
testClient.delete(testRoot);
}