test for isEncryptedPath()

This commit is contained in:
Bjoern Schiessle 2013-12-18 16:39:34 +01:00
parent 4f8ae789ae
commit f9ec3a7124

View file

@ -132,6 +132,41 @@ class Test_Encryption_Util extends \PHPUnit_Framework_TestCase {
}
/**
* @medium
* @brief test detection of encrypted files
*/
function testIsEncryptedPath() {
$util = new Encryption\Util($this->view, $this->userId);
self::loginHelper($this->userId);
$unencryptedFile = '/tmpUnencrypted-' . time() . '.txt';
$encryptedFile = '/tmpEncrypted-' . time() . '.txt';
// Disable encryption proxy to write a unencrypted file
$proxyStatus = \OC_FileProxy::$enabled;
\OC_FileProxy::$enabled = false;
$this->view->file_put_contents($this->userId . '/files/' . $unencryptedFile, $this->dataShort);
// Re-enable proxy - our work is done
\OC_FileProxy::$enabled = $proxyStatus;
// write a encrypted file
$this->view->file_put_contents($this->userId . '/files/' . $encryptedFile, $this->dataShort);
// test if both files are detected correctly
$this->assertFalse($util->isEncryptedPath($this->userId . '/files/' . $unencryptedFile));
$this->assertTrue($util->isEncryptedPath($this->userId . '/files/' . $encryptedFile));
// cleanup
$this->view->unlink($this->userId . '/files/' . $unencryptedFile, $this->dataShort);
$this->view->unlink($this->userId . '/files/' . $encryptedFile, $this->dataShort);
}
/**
* @medium
* @brief test setup of encryption directories