]> source.dussan.org Git - nextcloud-server.git/commitdiff
Added test case for when target mime types already exist
authorVincent Petry <pvince81@owncloud.com>
Wed, 25 Jun 2014 17:35:05 +0000 (19:35 +0200)
committerVincent Petry <pvince81@owncloud.com>
Wed, 25 Jun 2014 17:49:18 +0000 (19:49 +0200)
tests/lib/repair/repairmimetypes.php

index 42af116b72d1ca07b14890c3dcdcbf792dfec6ab..91600502da0ae7c4f2393d199a898764f4fb9660 100644 (file)
@@ -92,6 +92,52 @@ class TestRepairMimeTypes extends PHPUnit_Framework_TestCase {
                        )
                );
        }
+
+       /**
+        * Test renaming and splitting old office mime types when
+        * new ones already exist
+        */
+       public function testRenameOfficeMimeTypesWhenExist() {
+               $this->addEntries(
+                       array(
+                               array('test.doc', 'application/msword'),
+                               array('test.docx', 'application/msword'),
+                               array('test.xls', 'application/msexcel'),
+                               array('test.xlsx', 'application/msexcel'),
+                               array('test.ppt', 'application/mspowerpoint'),
+                               array('test.pptx', 'application/mspowerpoint'),
+                               // make it so that the new mimetypes already exist
+                               array('bogus.docx', 'application/vnd.openxmlformats-officedocument.wordprocessingml.document'),
+                               array('bogus.xlsx', 'application/vnd.ms-excel'),
+                               array('bogus.pptx', 'application/vnd.ms-powerpoint'),
+                               array('bogus2.docx', 'application/wrong'),
+                               array('bogus2.xlsx', 'application/wrong'),
+                               array('bogus2.pptx', 'application/wrong'),
+                       )
+               );
+
+               $this->repair->run();
+
+               // force mimetype reload
+               $this->storage->getCache()->loadMimeTypes();
+
+               $this->checkEntries(
+                       array(
+                               array('test.doc', 'application/msword'),
+                               array('test.docx', 'application/vnd.openxmlformats-officedocument.wordprocessingml.document'),
+                               array('test.xls', 'application/msexcel'),
+                               array('test.xlsx', 'application/vnd.ms-excel'),
+                               array('test.ppt', 'application/mspowerpoint'),
+                               array('test.pptx', 'application/vnd.ms-powerpoint'),
+                               array('bogus.docx', 'application/vnd.openxmlformats-officedocument.wordprocessingml.document'),
+                               array('bogus.xlsx', 'application/vnd.ms-excel'),
+                               array('bogus.pptx', 'application/vnd.ms-powerpoint'),
+                               array('bogus2.docx', 'application/vnd.openxmlformats-officedocument.wordprocessingml.document'),
+                               array('bogus2.xlsx', 'application/vnd.ms-excel'),
+                               array('bogus2.pptx', 'application/vnd.ms-powerpoint'),
+                       )
+               );
+       }
 }
 
 /**