aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rwxr-xr-xapps/files_encryption/tests/util.php35
1 files changed, 35 insertions, 0 deletions
diff --git a/apps/files_encryption/tests/util.php b/apps/files_encryption/tests/util.php
index e8dfb74f3f3..7d425dc122a 100755
--- a/apps/files_encryption/tests/util.php
+++ b/apps/files_encryption/tests/util.php
@@ -134,6 +134,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
*/
function testSetupServerSide() {