in src/main/java/org/apache/sling/launchpad/webapp/integrationtest/servlets/post/PostServletMoveTest.java [201:246]
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);
}