summaryrefslogtreecommitdiff
path: root/modules/exif/tests
diff options
context:
space:
mode:
authorTim Almdal <tnalmdal@shaw.ca>2009-02-10 16:28:50 +0000
committerTim Almdal <tnalmdal@shaw.ca>2009-02-10 16:28:50 +0000
commit19f29fb1d6dae4dc9e290c2cc7112401c328a59a (patch)
treedaae35f8aeb71b798443cac7320a027bcb092c66 /modules/exif/tests
parent9ad072b33fb091c7cad901849662d0b865a2410b (diff)
Exif data is now collected when an image is added.
Diffstat (limited to 'modules/exif/tests')
-rw-r--r--modules/exif/tests/Exif_Test.php56
-rw-r--r--modules/exif/tests/data/image.jpgbin0 -> 11211 bytes
2 files changed, 56 insertions, 0 deletions
diff --git a/modules/exif/tests/Exif_Test.php b/modules/exif/tests/Exif_Test.php
new file mode 100644
index 00000000..4ab1e21e
--- /dev/null
+++ b/modules/exif/tests/Exif_Test.php
@@ -0,0 +1,56 @@
+<?php defined("SYSPATH") or die("No direct script access.");
+/**
+ * Gallery - a web based photo album viewer and editor
+ * Copyright (C) 2000-2008 Bharat Mediratta
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or (at
+ * your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+class Exif_Test extends Unit_Test_Case {
+ public function exif_extract_test() {
+ $rand = rand();
+ $root = ORM::factory("item", 1);
+ $photo = photo::create($root, dirname(__FILE__) . "/data/image.jpg", "$rand.jpg", $rand, $rand);
+
+ $exif = exif::get($photo);
+ $expected = array(
+ array("caption" => "Camera Maker", "value" => "Pentax Corporation"),
+ array("caption" => "Camera Model", "value" => "PENTAX K10D"),
+ array("caption" => "Aperture", "value" => "f/2.8"),
+ array("caption" => "Color Space", "value" => "Uncalibrated"),
+ array("caption" => "Exposure Value", "value" => "4294.67 EV"),
+ array("caption" => "Exposure Program", "value" => "Program"),
+ array("caption" => "Flash", "value" => "No Flash"),
+ array("caption" => "Focal Length", "value" => "50 mm"),
+ array("caption" => "ISO", "value" => "6553700"),
+ array("caption" => "Metering Mode", "value" => "Multi-Segment"),
+ array("caption" => "Shutter Speed", "value" => "1/60 sec"),
+ array("caption" => "Date/Time", "value" => "2008:03:17 17:41:25")
+ );
+ $this->assert_equal($expected, $exif);
+
+ $exif = exif::get($photo, false);
+ $expected = array_merge($expected, array(
+ array("caption" => "Copyright", "value" => "(C) 2008 - T. Almdal"),
+ array("caption" => "Orientation", "value" => "1: Normal (0 deg)"),
+ array("caption" => "Resolution Unit", "value" => "Inch"),
+ array("caption" => "X Resolution", "value" => "240 dots per ResolutionUnit"),
+ array("caption" => "Y Resolution", "value" => "240 dots per ResolutionUnit"),
+ array("caption" => "Brightness Value", "value" => "0"),
+ array("caption" => "Scene Type", "value" => "0"),
+ array("caption" => "Subject Distance", "value" => "0"),
+ ));
+ $this->assert_equal($expected, $exif);
+ }
+} \ No newline at end of file
diff --git a/modules/exif/tests/data/image.jpg b/modules/exif/tests/data/image.jpg
new file mode 100644
index 00000000..e5ee1458
--- /dev/null
+++ b/modules/exif/tests/data/image.jpg
Binary files differ