/** * Test the bulk move functionality */ function testMove() { // Create documents $doc1 = $this->createDocument('Test Doc One', 'testdoc1.txt'); $doc2 = $this->createDocument('Test Doc Two', 'testdoc2.txt'); $doc3 = $this->createDocument('Test Doc Three', 'testdoc3.txt'); $folder1 = $this->root->add_folder("New move folder"); $this->assertNotError($newFolder); if (PEAR::isError($newFolder)) { return; } $doc4 = $this->createDocument('Test Doc Four', 'testdoc4.txt', $folder1); // Add a folder $targetFolder = $this->root->add_folder("New target folder"); $this->assertNotError($newFolder); if (PEAR::isError($newFolder)) { return; } $aItems = array($doc1, $doc2, $doc3, $folder1); // Copy documents and folder into target folder $res = $this->bulk->move($aItems, $targetFolder, 'Testing bulk move'); $this->assertTrue(empty($res)); // Check document has been moved not copied $detail = $doc1->get_detail(); $this->assertFalse($detail['folder_id'] == $this->root->get_folderid()); $this->assertTrue($detail['folder_id'] == $targetFolder->get_folderid()); // Check folder has been moved not copied $this->assertFalse($folder1->get_parent_folder_id() == $this->root->get_folderid()); $this->assertTrue($folder1->get_parent_folder_id() == $targetFolder->get_folderid()); // Check the documents copied $listDocs = $targetFolder->get_listing(1, 'D'); $this->assertTrue(count($listDocs) == 3); // Check the folder copied $listFolders = $targetFolder->get_listing(1, 'F'); $this->assertTrue(count($listFolders) == 1); // Check the document contained in the folder copied $newFolderId = $listFolders[0]['id']; $newFolder = $this->ktapi->get_folder_by_id($newFolderId); $listSubDocs = $newFolder->get_listing(1, 'D'); $this->assertTrue(count($listSubDocs) == 1); // Delete and expunge documents and folder $this->deleteDocument($doc1); $this->deleteDocument($doc2); $this->deleteDocument($doc3); $this->deleteDocument($doc4); $targetFolder->delete('Testing bulk copy'); $folder1->delete('Testing bulk copy'); }