From 0fca2f8f319d77b056516216ade0a931d21a2a69 Mon Sep 17 00:00:00 2001 From: Florin Peter Date: Thu, 16 May 2013 00:36:40 +0200 Subject: [PATCH] added tests for put content, get content, touch and fopen --- apps/files_encryption/tests/crypt.php | 75 +++++++++++++++++++++- apps/files_encryption/tests/keymanager.php | 2 +- apps/files_encryption/tests/util.php | 2 +- 3 files changed, 76 insertions(+), 3 deletions(-) diff --git a/apps/files_encryption/tests/crypt.php b/apps/files_encryption/tests/crypt.php index 6168f69415..3916b0e15e 100755 --- a/apps/files_encryption/tests/crypt.php +++ b/apps/files_encryption/tests/crypt.php @@ -77,7 +77,7 @@ class Test_Crypt extends \PHPUnit_Framework_TestCase { } function tearDown() { - + \OC_FileProxy::clearProxies(); } function testGenerateKey() { @@ -756,6 +756,79 @@ class Test_Crypt extends \PHPUnit_Framework_TestCase { $view = new \OC\Files\View('/' . $this->userId . '/files'); $view->unlink( $filename ); } + + function testViewFilePutAndGetContents() { + + $filename = '/tmp-'.time(); + $view = new \OC\Files\View('/' . $this->userId . '/files'); + + // Save short data as encrypted file using stream wrapper + $cryptedFile = $view->file_put_contents( $filename, $this->dataShort ); + + // Test that data was successfully written + $this->assertTrue( is_int( $cryptedFile ) ); + + // Get file decrypted contents + $decrypt = $view->file_get_contents( $filename ); + + $this->assertEquals( $this->dataShort, $decrypt ); + + // Save long data as encrypted file using stream wrapper + $cryptedFileLong = $view->file_put_contents( $filename, $this->dataLong ); + + // Test that data was successfully written + $this->assertTrue( is_int( $cryptedFileLong ) ); + + // Get file decrypted contents + $decryptLong = $view->file_get_contents( $filename ); + + $this->assertEquals( $this->dataLong, $decryptLong ); + + // tear down + $view->unlink( $filename ); + } + + function testTouchFile() { + $filename = '/tmp-'.time(); + $view = new \OC\Files\View('/' . $this->userId . '/files'); + + // Save short data as encrypted file using stream wrapper + $cryptedFile = $view->file_put_contents( $filename, $this->dataShort ); + + // Test that data was successfully written + $this->assertTrue( is_int( $cryptedFile ) ); + + $view->touch($filename); + + // Get file decrypted contents + $decrypt = $view->file_get_contents( $filename ); + + $this->assertEquals( $this->dataShort, $decrypt ); + + // tear down + $view->unlink( $filename ); + } + + function testFopenFile() { + $filename = '/tmp-'.time(); + $view = new \OC\Files\View('/' . $this->userId . '/files'); + + // Save short data as encrypted file using stream wrapper + $cryptedFile = $view->file_put_contents( $filename, $this->dataShort ); + + // Test that data was successfully written + $this->assertTrue( is_int( $cryptedFile ) ); + + $handle = $view->fopen($filename, 'r'); + + // Get file decrypted contents + $decrypt = fgets($handle); + + $this->assertEquals( $this->dataShort, $decrypt ); + + // tear down + $view->unlink( $filename ); + } // function testEncryption(){ // // $key=uniqid(); diff --git a/apps/files_encryption/tests/keymanager.php b/apps/files_encryption/tests/keymanager.php index d3078fdac9..28452d779c 100644 --- a/apps/files_encryption/tests/keymanager.php +++ b/apps/files_encryption/tests/keymanager.php @@ -71,7 +71,7 @@ class Test_Keymanager extends \PHPUnit_Framework_TestCase { function tearDown(){ \OC_FileProxy::$enabled = true; - + \OC_FileProxy::clearProxies(); } function testGetPrivateKey() { diff --git a/apps/files_encryption/tests/util.php b/apps/files_encryption/tests/util.php index 1e4e39cc47..2d637e2053 100755 --- a/apps/files_encryption/tests/util.php +++ b/apps/files_encryption/tests/util.php @@ -80,7 +80,7 @@ class Test_Enc_Util extends \PHPUnit_Framework_TestCase { function tearDown(){ m::close(); - + \OC_FileProxy::clearProxies(); } /**