When we move a page from one location to another, all references to that page should be changed.
First build a page, a subpage to move, and a target page to move it to. Then build a page that references the sub child to be moved.
| Page creator. | ||
| Page name. | Page contents. | valid? |
| ParentPage | x | true |
| ParentPage.SubPage | sub page | true |
| NewParentPage | x | true |
| ReferingPage | ParentPage.SubPage | true |
Then move the sub page.
| Response Requester. | |
| uri | status? |
| ParentPage.SubPage?responder=movePage&newLocation=NewParentPage&refactorReferences=on | |
Next fetch the moved page.
| Response Requester. | ||
| uri | valid? | contents? |
| NewParentPage.SubPage | true | |
Make sure that the sub page can be referenced in it's new location.
| Response Examiner. | |||
| type | pattern | matches? | wrapped html? |
| contents | sub page | true | |
Make sure that there is no sub page beneath ParentPage.
| Response Requester. | ||
| uri | valid? | contents? |
| ParentPage.SubPage?getPage&dontCreatePage | false | |
Finally, make sure that the refering page now refers to the new location.
| Response Requester. | ||
| uri | valid? | contents? |
| ReferingPage | true | |
| Response Examiner. | |||
| type | pattern | matches? | wrapped html? |
| contents | NewParentPage.SubPage | true | |