This repository has been archived on 2024-11-28. You can view files and clone it, but cannot push or open issues or pull requests.
Incam_SGD/tests/document/testDocument.php

88 lines
3.0 KiB
PHP
Raw Permalink Normal View History

<?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);
}
*/
}