]> source.dussan.org Git - nextcloud-server.git/commitdiff
add binary test case for encryption
authorRobin Appelman <icewind@owncloud.com>
Fri, 15 Jun 2012 21:11:33 +0000 (23:11 +0200)
committerRobin Appelman <icewind@owncloud.com>
Wed, 20 Jun 2012 18:18:41 +0000 (20:18 +0200)
apps/files_encryption/tests/binary [new file with mode: 0644]
apps/files_encryption/tests/proxy.php

diff --git a/apps/files_encryption/tests/binary b/apps/files_encryption/tests/binary
new file mode 100644 (file)
index 0000000..79bc994
Binary files /dev/null and b/apps/files_encryption/tests/binary differ
index f36b2193430b7a5a8a317bbda824143991df1c68..5616e2091a9e85e245e9409853dac552b0eae24b 100644 (file)
@@ -7,8 +7,13 @@
  */
 
 class Test_CryptProxy extends UnitTestCase {
+       private $oldConfig;
        
        public function setUp(){
+               $this->oldConfig=OCP\Config::getAppValue('files_encryption','enable_encryption','true');
+               OCP\Config::setAppValue('files_encryption','enable_encryption','true');
+       
+               
                //set testing key
                $_SESSION['enckey']=md5(time());
        
@@ -29,10 +34,11 @@ class Test_CryptProxy extends UnitTestCase {
                $rootView->mkdir('/'.OC_User::getUser().'/files');
        }
 
+       public function tearDown(){
+               OCP\Config::setAppValue('files_encryption','enable_encryption',$this->oldConfig);
+       }
+
        public function testSimple(){
-               $oldConfig=OCP\Config::getAppValue('files_encryption','enable_encryption','true');
-               OCP\Config::setAppValue('files_encryption','enable_encryption','true');
-       
                $file=OC::$SERVERROOT.'/3rdparty/MDB2.php';
                $original=file_get_contents($file);
 
@@ -46,16 +52,42 @@ class Test_CryptProxy extends UnitTestCase {
                $this->assertNotEqual($original,$stored);
                $this->assertEqual($original,$fromFile);
 
+       }
+
+       public function testView(){
+               $file=OC::$SERVERROOT.'/3rdparty/MDB2.php';
+               $original=file_get_contents($file);
+
                $rootView=new OC_FilesystemView('');
                $view=new OC_FilesystemView('/'.OC_User::getUser());
                $userDir='/'.OC_User::getUser().'/files';
 
+               $rootView->file_put_contents($userDir.'/file',$original);
+
+               OC_FileProxy::$enabled=false;
+               $stored=$rootView->file_get_contents($userDir.'/file');
+               OC_FileProxy::$enabled=true;
+
+               $this->assertNotEqual($original,$stored);
                $fromFile=$rootView->file_get_contents($userDir.'/file');
                $this->assertEqual($original,$fromFile);
 
                $fromFile=$view->file_get_contents('files/file');
                $this->assertEqual($original,$fromFile);
+       }
+
+       public function testBinary(){
+               $file=__DIR__.'/binary';
+               $original=file_get_contents($file);
+
+               OC_Filesystem::file_put_contents('/file',$original);
 
-               OCP\Config::setAppValue('files_encryption','enable_encryption',$oldConfig);
+               OC_FileProxy::$enabled=false;
+               $stored=OC_Filesystem::file_get_contents('/file');
+               OC_FileProxy::$enabled=true;
+
+               $fromFile=OC_Filesystem::file_get_contents('/file');
+               $this->assertNotEqual($original,$stored);
+               $this->assertEqual($original,$fromFile);
        }
 }