From 0e41a576f6283cb8e9b0bf2f0ee35ebf739e8396 Mon Sep 17 00:00:00 2001 From: "Michael J. Rubinsky" Date: Sun, 14 Feb 2010 11:53:11 -0500 Subject: [PATCH] update tests --- framework/Image/tests/im.php | 19 ++++++++++++++++--- framework/Image/tests/runtest.php | 9 +++++---- framework/Image/tests/two_page.tif.tiff | Bin 0 -> 36323 bytes 3 files changed, 21 insertions(+), 7 deletions(-) create mode 100644 framework/Image/tests/two_page.tif.tiff diff --git a/framework/Image/tests/im.php b/framework/Image/tests/im.php index 84c8d105b..fd1b0930e 100644 --- a/framework/Image/tests/im.php +++ b/framework/Image/tests/im.php @@ -7,9 +7,8 @@ * * @package Horde_Image */ -define('HORDE_BASE', '/var/www/html/horde'); -$horde_authentication = 'none'; -require_once HORDE_BASE . '/lib/base.php'; +require_once dirname(__FILE__) . '/../../../horde/lib/Application.php'; +Horde_Registry::appInit('horde', array('authentication' => 'none')); $db = $GLOBALS['injector']->getInstance('Horde_Db_Adapter_Base'); // Putting these here so they don't interfere with timing/memory data when @@ -21,6 +20,20 @@ $handler = new Horde_Log_Handler_Stream(fopen('/tmp/imagetest.log','a+')); $logger = new Horde_Log_Logger($handler); switch ($test) { + +case 'multipage': + $time = xdebug_time_index(); + $image = getImageObject(array('filename' => 'two_page.tif.tiff')); + $first = true; + foreach ($image as $index => $imObject) { + if (!$first) { + $image->display(); + } else { + $first = false; + } + } + logThis($test, $time, xdebug_peak_memory_usage()); + case 'testInitialState': // Solid blue background color - basically tests initial state of the // Horde_Image object. diff --git a/framework/Image/tests/runtest.php b/framework/Image/tests/runtest.php index 401b5b1b0..f5986b14b 100644 --- a/framework/Image/tests/runtest.php +++ b/framework/Image/tests/runtest.php @@ -3,8 +3,8 @@ * Test harness for generating the test images for Horde_Image tests */ -define('HORDE_BASE', '/var/www/html/horde'); -require_once HORDE_BASE . '/lib/Application.php'; +require_once dirname(__FILE__) . '/../../../horde/lib/Application.php'; +Horde_Registry::appInit('horde', array('authentication' => 'none')); $allTests = array( 'testInitialState' => 'Test initial state. Solid blue square', @@ -29,6 +29,7 @@ $allTests = array( 'testPolaroidstackBlueBG' => 'Polaroid stack on a blue background', //'testInitialStateAfterLoad' => 'Initial state after loading an existing image.', 'testResize' => 'Test resize method.', + 'multipage' => 'Test Multipage tiffs', ); ?> @@ -40,8 +41,8 @@ $allTests = array( EffectImImagick $description) { - echo '' . $description . '' . Horde::img('im.php?test=' . $name, '', '', '') . '' - . '' . Horde::img('im.php?test=' . $name . '&driver=Imagick', '', '', '') . ''; + echo '' . $description . '' . Horde::img('im.php?test=' . $name, '', '', '') . '' . + '' . Horde::img('im.php?test=' . $name . '&driver=Imagick', '', '', '') . ''; } echo ''; ?> diff --git a/framework/Image/tests/two_page.tif.tiff b/framework/Image/tests/two_page.tif.tiff new file mode 100644 index 0000000000000000000000000000000000000000..6b288c3f1258e9023aae731b027cd938801d1053 GIT binary patch literal 36323 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 literal 0 HcmV?d00001 -- 2.11.0