Explorar o código

ZF-7650
Zend_Queue
Refactored tests to follow ZF testing guidelines more closely


git-svn-id: http://framework.zend.com/svn/framework/standard/trunk@24328 44c647ce-9c0f-0410-b52a-842ac1e357ba

adamlundrigan %!s(int64=14) %!d(string=hai) anos
pai
achega
7c8529a1dd

+ 2 - 0
tests/TestConfiguration.php.dist

@@ -577,8 +577,10 @@ define('TESTS_ZEND_QUEUE_ACTIVEMQ_SCHEME', false);
 define('TESTS_ZEND_QUEUE_ACTIVEMQ_HOST', false);
 define('TESTS_ZEND_QUEUE_ACTIVEMQ_PORT', false);
 define('TESTS_ZEND_QUEUE_DB', false);
+define('TESTS_ZEND_QUEUE_MEMCACHEQ_ENABLED', false);
 define('TESTS_ZEND_QUEUE_MEMCACHEQ_HOST', false);
 define('TESTS_ZEND_QUEUE_MEMCACHEQ_PORT', false);
+define('TESTS_ZEND_QUEUE_PLATFORMJQ_ENABLED', false);
 define('TESTS_ZEND_QUEUE_PLATFORMJQ_HOST', false);
 define('TESTS_ZEND_QUEUE_PLATFORMJQ_PASS', false);
 

+ 17 - 0
tests/Zend/Queue/Adapter/ActivemqTest.php

@@ -98,4 +98,21 @@ class Zend_Queue_Adapter_ActivemqTest extends Zend_Queue_Adapter_AdapterTest
         $this->assertTrue(is_string(Zend_Queue_Adapter_Activemq::DEFAULT_HOST));
         $this->assertTrue(is_integer(Zend_Queue_Adapter_Activemq::DEFAULT_PORT));
     }
+    
+    /**
+     * @group ZF-7650
+     */
+    public function testReceiveWillRetrieveZeroItems()
+    {
+        $options = array('driverOptions' => $this->getTestConfig());
+
+        $queue = new Zend_Queue('Activemq', $options);
+        $queue2 = $queue->createQueue('queue');
+
+        $queue->send('My Test Message 1');
+        $queue->send('My Test Message 2');
+
+        $messages = $queue->receive(0);
+        $this->assertEquals(0, count($messages));
+    }
 }

+ 16 - 0
tests/Zend/Queue/Adapter/ArrayTest.php

@@ -110,4 +110,20 @@ class Zend_Queue_Adapter_ArrayTest extends Zend_Queue_Adapter_AdapterTest
         $got = $adapter->getData();
         $this->assertEquals($data['test'], $got['test']);
     }
+    
+    /**
+     * @group ZF-7650
+     */
+    public function testReceiveWillRetrieveZeroItems()
+    {
+        // Zend_Queue_Adapter_Array
+        $queue = new Zend_Queue('Array');
+        $queue2 = $queue->createQueue('queue');
+
+        $queue->send('My Test Message 1');
+        $queue->send('My Test Message 2');
+
+        $messages = $queue->receive(0);
+        $this->assertEquals(0, count($messages));
+    }
 }

+ 26 - 1
tests/Zend/Queue/Adapter/DbTest.php

@@ -55,9 +55,16 @@ require_once 'Zend/Db/Select.php';
  */
 class Zend_Queue_Adapter_DbTest extends Zend_Queue_Adapter_AdapterTest
 {
-    protected function setUp()
+    /**
+     * Test setup
+     */
+    public function setUp()
     {
+        if (!TESTS_ZEND_QUEUE_DB) {
+            $this->markTestSkipped('TESTS_ZEND_QUEUE_DB is not enabled in TestConfiguration.php');
+        }
         date_default_timezone_set('GMT');
+        parent::setUp();
     }
 
     /**
@@ -135,5 +142,23 @@ class Zend_Queue_Adapter_DbTest extends Zend_Queue_Adapter_AdapterTest
             }
         }
     }
+    
+    /**
+     * @group ZF-7650
+     */
+    public function testReceiveWillRetrieveZeroItems()
+    {
+        $options = $this->getTestConfig();
+        $options['name'] = '/temp-queue/ZF7650';
+
+        $queue = new Zend_Queue('Db', $options);
+        $queue2 = $queue->createQueue('queue');
+
+        $queue->send('My Test Message 1');
+        $queue->send('My Test Message 2');
+
+        $messages = $queue->receive(0);
+        $this->assertEquals(0, count($messages));
+    }
 }
 

+ 32 - 0
tests/Zend/Queue/Adapter/MemcacheqTest.php

@@ -51,6 +51,21 @@ require_once dirname(__FILE__) . '/AdapterTest.php';
 class Zend_Queue_Adapter_MemcacheqTest extends Zend_Queue_Adapter_AdapterTest
 {
     /**
+     * Test setup
+     */
+    public function setUp()
+    {
+        if (!TESTS_ZEND_QUEUE_MEMCACHEQ_ENABLED) {
+            $this->markTestSkipped('TESTS_ZEND_QUEUE_MEMCACHEQ_ENABLED is not enabled in TestConfiguration.php');
+        }
+        if (!extension_loaded('memcache')) {
+            $this->markTestSkipped('memcache extension not loaded');
+        }
+        date_default_timezone_set('GMT');
+        parent::setUp();
+    }
+    
+    /**
      * getAdapterName() is an method to help make AdapterTest work with any
      * new adapters
      *
@@ -100,4 +115,21 @@ class Zend_Queue_Adapter_MemcacheqTest extends Zend_Queue_Adapter_AdapterTest
         $this->assertTrue(is_integer(Zend_Queue_Adapter_Memcacheq::DEFAULT_PORT));
         $this->assertTrue(is_string(Zend_Queue_Adapter_Memcacheq::EOL));
     }
+    
+    /**
+     * @group ZF-7650
+     */
+    public function testReceiveWillRetrieveZeroItems()
+    {
+        $options = array('name' => 'ZF7650', 'driverOptions' => $this->getTestConfig());
+
+        $queue = new Zend_Queue('Memcacheq', $options);
+        $queue2 = $queue->createQueue('queue');
+
+        $queue->send('My Test Message 1');
+        $queue->send('My Test Message 2');
+
+        $messages = $queue->receive(0);
+        $this->assertEquals(0, count($messages));
+    }
 }

+ 1 - 3
tests/Zend/Queue/AllTests.php

@@ -80,9 +80,7 @@ class Zend_Queue_AllTests
 
         // Adapter testing
         $suite->addTestSuite('Zend_Queue_Adapter_ArrayTest');
-        if (extension_loaded('memcache')) {
-            $suite->addTestSuite('Zend_Queue_Adapter_MemcacheqTest');
-        }
+        $suite->addTestSuite('Zend_Queue_Adapter_MemcacheqTest');
         $suite->addTestSuite('Zend_Queue_Adapter_DbTest');
         $suite->addTestSuite('Zend_Queue_Adapter_NullTest');
         $suite->addTestSuite('Zend_Queue_Adapter_PlatformJobQueueTest');

+ 0 - 127
tests/Zend/Queue/Bugs/ZF-7650Test.php

@@ -1,127 +0,0 @@
-<?php
-/**
- * Zend Framework
- *
- * LICENSE
- *
- * This source file is subject to the new BSD license that is bundled
- * with this package in the file LICENSE.txt.
- * It is also available through the world-wide-web at this URL:
- * http://framework.zend.com/license/new-bsd
- * If you did not receive a copy of the license and are unable to
- * obtain it through the world-wide-web, please send an email
- * to license@zend.com so we can send you a copy immediately.
- *
- * @category   Zend
- * @package    Zend_Queue
- * @subpackage UnitTests
- * @copyright  Copyright (c) 2005-2011 Zend Technologies USA Inc. (http://www.zend.com)
- * @license    http://framework.zend.com/license/new-bsd     New BSD License
- * @version    $Id: QueueTest.php 17667 2009-08-18 21:40:09Z mikaelkael $
- */
-
-/*
- * This code specifically tests for ZF-7650
- */
-
-/** Zend_Queue */
-require_once 'Zend/Queue.php';
-
-/** Zend_Queue */
-require_once 'Zend/Queue/Message.php';
-
-/** Zend_Queue_Adapter_Array */
-require_once 'Zend/Queue/Adapter/Array.php';
-
-/**
- * @see Zend_Db_Select
- */
-require_once 'Zend/Db/Select.php';
-
-/**
- * @category   Zend
- * @package    Zend_Queue
- * @subpackage UnitTests
- * @copyright  Copyright (c) 2005-2011 Zend Technologies USA Inc. (http://www.zend.com)
- * @license    http://framework.zend.com/license/new-bsd     New BSD License
- * @group      Zend_Queue
- */
-class Zend_Queue_QueueTest extends PHPUnit_Framework_TestCase
-{
-    public function test_ZF_7650()
-    {
-        // Zend_Queue_Adapter_Array
-        $queue = new Zend_Queue('Array');
-        $queue2 = $queue->createQueue('queue');
-
-        $queue->send('My Test Message 1');
-        $queue->send('My Test Message 2');
-
-        $messages = $queue->receive(0);
-        $this->assertEquals(0, count($messages));
-
-        // Zend_Queue_Adapter_Memcacheq
-        $driverOptions = array();
-        if (defined('TESTS_ZEND_QUEUE_MEMCACHEQ_HOST')) {
-            $driverOptions['host'] = TESTS_ZEND_QUEUE_MEMCACHEQ_HOST;
-        }
-        if (defined('TESTS_ZEND_QUEUE_MEMCACHEQ_PORT')) {
-            $driverOptions['port'] = TESTS_ZEND_QUEUE_MEMCACHEQ_PORT;
-        }
-        $options = array('name' => 'ZF7650', 'driverOptions' => $driverOptions);
-
-        $queue = new Zend_Queue('Memcacheq', $options);
-        $queue2 = $queue->createQueue('queue');
-
-        $queue->send('My Test Message 1');
-        $queue->send('My Test Message 2');
-
-        $messages = $queue->receive(0);
-        $this->assertEquals(0, count($messages));
-
-        // Zend_Queue_Adapter_Db
-        $driverOptions = array();
-        if (defined('TESTS_ZEND_QUEUE_DB')) {
-            require_once 'Zend/Json.php';
-            $driverOptions = Zend_Json::decode(TESTS_ZEND_QUEUE_DB);
-        }
-
-        $options = array(
-            'name'          => '/temp-queue/ZF7650',
-            'options'       => array(Zend_Db_Select::FOR_UPDATE => true),
-            'driverOptions' => $driverOptions,
-        );
-
-        $queue = new Zend_Queue('Db', $options);
-        $queue2 = $queue->createQueue('queue');
-
-        $queue->send('My Test Message 1');
-        $queue->send('My Test Message 2');
-
-        $messages = $queue->receive(0);
-        $this->assertEquals(0, count($messages));
-
-        // Zend_Queue_Adapter_Activemq
-        $driverOptions = array();
-        if (defined('TESTS_ZEND_QUEUE_ACTIVEMQ_HOST')) {
-            $driverOptions['host'] = TESTS_ZEND_QUEUE_ACTIVEMQ_HOST;
-        }
-        if (defined('TESTS_ZEND_QUEUE_ACTIVEMQ_PORT')) {
-            $driverOptions['port'] = TESTS_ZEND_QUEUE_ACTIVEMQ_PORT;
-        }
-        if (defined('TESTS_ZEND_QUEUE_ACTIVEMQ_SCHEME')) {
-            $driverOptions['scheme'] = TESTS_ZEND_QUEUE_ACTIVEMQ_SCHEME;
-        }
-        $options = array('driverOptions' => $driverOptions);
-
-        $queue = new Zend_Queue('Activemq', $options);
-        $queue2 = $queue->createQueue('queue');
-
-        $queue->send('My Test Message 1');
-        $queue->send('My Test Message 2');
-
-        $messages = $queue->receive(0);
-        $this->assertEquals(0, count($messages));
-    }
-}
-