88 lines
3.0 KiB
PHP
88 lines
3.0 KiB
PHP
|
|
<?php
|
||
|
|
|
||
|
|
require_once(dirname(__FILE__) . '/../test.php');
|
||
|
|
require_once(KT_LIB_DIR . '/foldermanagement/folderutil.inc.php');
|
||
|
|
|
||
|
|
class DocumentTestCase extends KTUnitTestCase {
|
||
|
|
function setup() {
|
||
|
|
$oRootFolder =& Folder::get(1);
|
||
|
|
$this->oUser = User::get(1);
|
||
|
|
$sName = 'DocumentTest' . strftime('%Y%m%d%H%M%S');
|
||
|
|
$this->oFolder =& KTFolderUtil::add($oRootFolder, $sName, $this->oUser);
|
||
|
|
}
|
||
|
|
|
||
|
|
function tearDown() {
|
||
|
|
$aOptions = array('ignore_permissions' => true);
|
||
|
|
KTFolderUtil::delete($this->oFolder, $this->oUser, 'test case', $aOptions);
|
||
|
|
}
|
||
|
|
|
||
|
|
function &_addFile($sFileName, $aOptions = null) {
|
||
|
|
if(!is_array($aOptions)) $aOptions = array();
|
||
|
|
$oDocument =& KTDocumentUtil::add($this->oFolder, $sFileName, $this->oUser, $aOptions);
|
||
|
|
return $oDocument;
|
||
|
|
}
|
||
|
|
|
||
|
|
/* function testAddInOneGo() {
|
||
|
|
$sLocalname = dirname(__FILE__) . '/dataset1/critique-of-pure-reason.txt';
|
||
|
|
$sFilename = tempnam("/tmp", "kt_tests_document_add");
|
||
|
|
copy($sLocalname, $sFilename);
|
||
|
|
|
||
|
|
$oDocument =& $this->_addFile('testAddInOneGo.txt', array(
|
||
|
|
'contents' => new KTFSFileLike($sFilename),
|
||
|
|
'metadata' => array(),
|
||
|
|
));
|
||
|
|
|
||
|
|
$res = $this->assertEntity($oDocument, 'Document');
|
||
|
|
if ($res === false) {
|
||
|
|
return;
|
||
|
|
}
|
||
|
|
$res = $this->assertEqual($oDocument->getStatusId(), 1);
|
||
|
|
if ($res === false) {
|
||
|
|
return;
|
||
|
|
}
|
||
|
|
|
||
|
|
$oStorage =& KTStorageManagerUtil::getSingleton();
|
||
|
|
$sTmpFile = $oStorage->temporaryFile($oDocument);
|
||
|
|
$sLocalContents = file_get_contents($sLocalname);
|
||
|
|
$sStoredContents = file_get_contents($sTmpFile);
|
||
|
|
$oStorage->freeTemporaryFile($sTmpFile);
|
||
|
|
|
||
|
|
$res = $this->assertEqual($sLocalContents, $sStoredContents);
|
||
|
|
if ($res === false) {
|
||
|
|
return;
|
||
|
|
}
|
||
|
|
|
||
|
|
$oDocument =& KTDocumentUtil::add($this->oFolder, "testaddinonego.txt", $this->oUser, array(
|
||
|
|
'contents' => new KTFSFileLike($sFilename),
|
||
|
|
));
|
||
|
|
$res = $this->assertEntity($oDocument, 'PEAR_Error');
|
||
|
|
if ($res === false) {
|
||
|
|
return;
|
||
|
|
}
|
||
|
|
}
|
||
|
|
|
||
|
|
function testAddSeparately() {
|
||
|
|
$oDocument =& $this->_addFile("testAddSeparately.txt");
|
||
|
|
$this->assertEntity($oDocument, 'Document');
|
||
|
|
$this->assertEqual($oDocument->getStatusId(), 5);
|
||
|
|
|
||
|
|
$sLocalname = dirname(__FILE__) . '/dataset1/critique-of-pure-reason.txt';
|
||
|
|
$sFilename = tempnam("/tmp", "kt_tests_document_add");
|
||
|
|
copy($sLocalname, $sFilename);
|
||
|
|
|
||
|
|
$res = KTDocumentUtil::storeContents($oDocument, new KTFSFileLike($sFilename));
|
||
|
|
$this->assertEqual($oDocument->getStatusId(), 5);
|
||
|
|
$res = KTDocumentUtil::saveMetadata($oDocument, array());
|
||
|
|
$this->assertEqual($oDocument->getStatusId(), 1);
|
||
|
|
}
|
||
|
|
|
||
|
|
// Ok, not a test yet.
|
||
|
|
function testCreateMetadataVersion() {
|
||
|
|
$oDocument =& $this->_addFile("testCreateMetadataVersion.txt");
|
||
|
|
$res = KTDocumentUtil::saveMetadata($oDocument, array());
|
||
|
|
|
||
|
|
$this->assertEqual($res, true);
|
||
|
|
}
|
||
|
|
*/
|
||
|
|
}
|