From 1e09d721ec541df81de68989eed42c7b72ce8d7c Mon Sep 17 00:00:00 2001 From: knut <> Date: Wed, 30 May 2007 13:37:54 +0000 Subject: resolved #631 --- framework/Collections/TQueue.php | 12 +++++++++++- tests/unit/Collections/TQueueTest.php | 7 +++++++ 2 files changed, 18 insertions(+), 1 deletion(-) diff --git a/framework/Collections/TQueue.php b/framework/Collections/TQueue.php index e70b0ded..025fa6d0 100644 --- a/framework/Collections/TQueue.php +++ b/framework/Collections/TQueue.php @@ -31,7 +31,7 @@ * @package System.Collections * @since 3.1 */ -class TQueue extends TComponent implements IteratorAggregate +class TQueue extends TComponent implements IteratorAggregate,Countable { /** * internal data storage @@ -160,6 +160,16 @@ class TQueue extends TComponent implements IteratorAggregate { return $this->_c; } + + /** + * Returns the number of items in the queue. + * This method is required by Countable interface. + * @return integer number of items in the queue. + */ + public function count() + { + return $this->getCount(); + } } /** diff --git a/tests/unit/Collections/TQueueTest.php b/tests/unit/Collections/TQueueTest.php index d0fe1af0..1c755480 100644 --- a/tests/unit/Collections/TQueueTest.php +++ b/tests/unit/Collections/TQueueTest.php @@ -118,6 +118,13 @@ class TQueueTest extends PHPUnit_Framework_TestCase { $queue = new TQueue(array(1, 2, 3)); self::assertEquals(3, $queue->getCount()); } + + public function testCountable() { + $queue = new TQueue(); + self::assertEquals(0, count($queue)); + $queue = new TQueue(array(1, 2, 3)); + self::assertEquals(3, count($queue)); + } } -- cgit v1.2.3