summaryrefslogtreecommitdiff
path: root/modules/gallery/tests
diff options
context:
space:
mode:
authorshadlaws <shad@shadlaws.com>2013-01-28 23:31:18 +0100
committershadlaws <shad@shadlaws.com>2013-01-28 23:31:18 +0100
commit5fca371a616dba16f955087c4477ee229ee222d0 (patch)
tree10815a88f2632535d6855bb8220ca0a96cc18b21 /modules/gallery/tests
parent23c6c507526ec1fc4a7ff80afb154341d75e9cab (diff)
#1945 - Extend legal_file helper functions.
- Added get_types_by_extension function, which is a merged version of get...types_by_extension functions (similar to get_extensions). - Added optional extension argument to get...extensions functions similar to get...types_by_extension functions. - Added unit tests. Now, every legal_file function has one. - Restructured helper file to include caches. - Added array_unique to get...types (derived from get...types_by_extension, which can be many-to-one). - Edited server_add, uploader, and item model to use new functionality.
Diffstat (limited to 'modules/gallery/tests')
-rw-r--r--modules/gallery/tests/Legal_File_Helper_Test.php57
1 files changed, 57 insertions, 0 deletions
diff --git a/modules/gallery/tests/Legal_File_Helper_Test.php b/modules/gallery/tests/Legal_File_Helper_Test.php
index 5db99935..84a29a52 100644
--- a/modules/gallery/tests/Legal_File_Helper_Test.php
+++ b/modules/gallery/tests/Legal_File_Helper_Test.php
@@ -40,6 +40,63 @@ class Legal_File_Helper_Test extends Gallery_Unit_Test_Case {
$this->assert_equal(3, count(legal_file::get_movie_types_by_extension()));
}
+ public function get_types_by_extension_test() {
+ $this->assert_equal("image/jpeg", legal_file::get_types_by_extension("jpg")); // photo
+ $this->assert_equal("video/x-flv", legal_file::get_types_by_extension("FLV")); // movie
+ $this->assert_equal(null, legal_file::get_types_by_extension("php")); // invalid
+ $this->assert_equal(null, legal_file::get_types_by_extension("php.flv")); // invalid w/ .
+
+ // No extension returns full array
+ $this->assert_equal(7, count(legal_file::get_types_by_extension()));
+ }
+
+ public function get_photo_extensions_test() {
+ $this->assert_equal(true, legal_file::get_photo_extensions("jpg")); // regular
+ $this->assert_equal(true, legal_file::get_photo_extensions("JPG")); // all caps
+ $this->assert_equal(true, legal_file::get_photo_extensions("Png")); // some caps
+ $this->assert_equal(false, legal_file::get_photo_extensions("php")); // invalid
+ $this->assert_equal(false, legal_file::get_photo_extensions("php.jpg")); // invalid w/ .
+
+ // No extension returns full array
+ $this->assert_equal(4, count(legal_file::get_photo_extensions()));
+ }
+
+ public function get_movie_extensions_test() {
+ $this->assert_equal(true, legal_file::get_movie_extensions("flv")); // regular
+ $this->assert_equal(true, legal_file::get_movie_extensions("FLV")); // all caps
+ $this->assert_equal(true, legal_file::get_movie_extensions("Mp4")); // some caps
+ $this->assert_equal(false, legal_file::get_movie_extensions("php")); // invalid
+ $this->assert_equal(false, legal_file::get_movie_extensions("php.jpg")); // invalid w/ .
+
+ // No extension returns full array
+ $this->assert_equal(3, count(legal_file::get_movie_extensions()));
+ }
+
+ public function get_extensions_test() {
+ $this->assert_equal(true, legal_file::get_extensions("jpg")); // photo
+ $this->assert_equal(true, legal_file::get_extensions("FLV")); // movie
+ $this->assert_equal(false, legal_file::get_extensions("php")); // invalid
+ $this->assert_equal(false, legal_file::get_extensions("php.jpg")); // invalid w/ .
+
+ // No extension returns full array
+ $this->assert_equal(7, count(legal_file::get_extensions()));
+ }
+
+ public function get_filters_test() {
+ // All 7 extensions both uppercase and lowercase
+ $this->assert_equal(14, count(legal_file::get_filters()));
+ }
+
+ public function get_photo_types_test() {
+ // Note that this is one *less* than photo extensions since jpeg and jpg have the same mime.
+ $this->assert_equal(3, count(legal_file::get_photo_types()));
+ }
+
+ public function get_movie_types_test() {
+ // Note that this is one *more* than movie extensions since video/flv is added.
+ $this->assert_equal(4, count(legal_file::get_movie_types()));
+ }
+
public function change_extension_test() {
$this->assert_equal("foo.jpg", legal_file::change_extension("foo.png", "jpg"));
}