function testRestoreOneVersion() { $filePath = dirname(__FILE__) . '/_fixtures/version.test'; touch($filePath); $versionFactory = new Docman_VersionFactoryTestVersion($this); $dao = new MockDocman_VersionDao($this); $versionFactory->setReturnValue('_getVersionDao', $dao); $dar = new MockDataAccessResult($this); $dar->setReturnValue('isError', false); $dar->setReturnValue('getRow', array('purge_date' => null, 'label' => 'Ho hisse la saucisse', 'path' => $filePath)); $dao->expectOnce('searchDeletedVersion', array(1664, 2)); $dao->setReturnValue('searchDeletedVersion', $dar); $file = new MockDocman_File($this); $file->setReturnValue('getGroupId', 114); $if = new MockDocman_ItemFactory($this); $if->expectOnce('getItemFromDb', array(1664, array('ignore_deleted' => true))); $if->setReturnValue('getItemFromDb', $file); $versionFactory->setReturnValue('_getItemFactory', $if); $user = new MockUser($this); $um = new MockUserManager($this); $um->setReturnValue('getCurrentUser', $user); $versionFactory->setReturnValue('_getUserManager', $um); $em = new MockEventManager($this); $em->expectOnce('processEvent', array('plugin_docman_event_restore_version', array('group_id' => 114, 'item' => $file, 'old_value' => '2 (Ho hisse la saucisse)', 'user' => $user))); $versionFactory->setReturnValue('_getEventManager', $em); $dao->expectOnce('restore', array(1664, 2)); $dao->setReturnValue('restore', true); $version = new MockDocman_Version($this); $version->setReturnValue('getNumber', 2); $version->setReturnValue('getItemId', 1664); $this->assertTrue($versionFactory->restore($version)); unlink($filePath); }
function testCannotDeleteNonExistantVersion() { // Definition acceptance criteria: // test is complete if there is an info flash message that tells version is deleted $ctrl = new MockDocman_Controller($this); $ctrl->feedback = new MockFeedback($this); // Test log message $ctrl->feedback->expectOnce('log', array('error', '*')); $GLOBALS['Language']->setReturnValue('getText', 'bla'); $GLOBALS['Language']->expectOnce('getText', array('plugin_docman', 'error_item_not_deleted_unknown_version')); // Setup of the test $actions = new Docman_ActionsTest($this); $ctrl->request = new MockHTTPRequest($this); $ctrl->request->setReturnValue('get', '102', array('group_id')); $ctrl->request->setReturnValue('get', '344', array('id')); $ctrl->request->setReturnValue('get', '1', array('version')); $ctrl->request->setReturnValue('valid', true); $actions->_controler = $ctrl; $item = new MockDocman_File($this); $item->expectNever('accept'); $if = new MockDocman_ItemFactory($this); $if->setReturnValue('getItemFromDb', $item, array(344)); $if->setReturnValue('getItemTypeForItem', PLUGIN_DOCMAN_ITEM_TYPE_FILE); $actions->setReturnValue('_getItemFactory', $if); $actions->expectOnce('_getItemFactory', array(102)); $vf = new MockDocman_VersionFactory($this); $v1 = new MockDocman_Version($this); $v1->setReturnValue('getNumber', 0); $v1->setReturnValue('getLabel', 'label 4'); $v2 = new MockDocman_Version($this); $v2->setReturnValue('getNumber', 2); $v2->setReturnValue('getLabel', 'label 5'); $vf->setReturnValue('getAllVersionForItem', array($v1, $v2)); $actions->setReturnValue('_getVersionFactory', $vf); $actions->setReturnValue('_getEventManager', new MockEventManager($this)); // Run test $actions->deleteVersion(); }
/** * Testing when the folder have childrens */ function testGetChildSuccess() { $webDAVDocmanFolder = new WebDAVDocmanFolderTestVersion3($this); $item = new MockDocman_Item(); $item->setReturnValue('getTitle', 'SomeName'); $folder = new WebDAVDocmanFolderTestVersion3($this); $folder->setReturnValue('getItem', $item); $docmanItemFactory = new MockDocman_ItemFactory(); $docmanItemFactory->setReturnValue('getChildrenFromParent', array($item)); $utils = new MockWebDAVUtils(); $docmanPermissionManager = new MockDocman_PermissionsManager(); $docmanPermissionManager->setReturnValue('userCanAccess', true); $utils->setReturnValue('getDocmanPermissionsManager', $docmanPermissionManager); $utils->setReturnValue('getDocmanItemFactory', $docmanItemFactory); $utils->setReturnValue('retrieveName', 'SomeName'); $webDAVDocmanFolder->setReturnValue('getUtils', $utils); $webDAVDocmanFolder->setReturnValue('getWebDAVDocmanFolder', $folder); $this->assertEqual($webDAVDocmanFolder->getChild('SomeName'), $folder); }