aboutsummaryrefslogtreecommitdiff
path: root/tests/di
diff options
context:
space:
mode:
authorMate Bartus <mate.bartus@gmail.com>2015-06-24 13:13:13 +0200
committerMate Bartus <mate.bartus@gmail.com>2015-06-24 13:13:13 +0200
commitf5b476b221d2fec5cb5886ca6174b3e7c27b1cba (patch)
tree8f3f5aef1383c783df91bdc19b8fd57b3e84ad96 /tests/di
parent[ticket/13961] Add ordered service collection (diff)
downloadphpbb-f5b476b221d2fec5cb5886ca6174b3e7c27b1cba.tar.gz
phpbb-f5b476b221d2fec5cb5886ca6174b3e7c27b1cba.tar.bz2
phpbb-f5b476b221d2fec5cb5886ca6174b3e7c27b1cba.zip
[ticket/13961] Add tests for ordered collections
PHPBB3-13961
Diffstat (limited to 'tests/di')
-rw-r--r--tests/di/ordered_service_collection_test.php51
-rw-r--r--tests/di/service_collection_test.php4
2 files changed, 53 insertions, 2 deletions
diff --git a/tests/di/ordered_service_collection_test.php b/tests/di/ordered_service_collection_test.php
new file mode 100644
index 0000000000..046cd8ccef
--- /dev/null
+++ b/tests/di/ordered_service_collection_test.php
@@ -0,0 +1,51 @@
+<?php
+/**
+ *
+ * This file is part of the phpBB Forum Software package.
+ *
+ * @copyright (c) phpBB Limited <https://www.phpbb.com>
+ * @license GNU General Public License, version 2 (GPL-2.0)
+ *
+ * For full copyright and license information, please see
+ * the docs/CREDITS.txt file.
+ *
+ */
+
+class phpbb_ordered_service_collection_test extends \phpbb_test_case
+{
+ /**
+ * @var \phpbb\di\service_collection\ordered_service_collection
+ */
+ protected $service_collection;
+
+ public function setUp()
+ {
+ $container = new phpbb_mock_container_builder();
+ $container->set('foo', new StdClass);
+ $container->set('bar', new StdClass);
+ $container->set('foobar', new StdClass);
+ $container->set('barfoo', new StdClass);
+
+ $this->service_collection = new \phpbb\di\service_collection\ordered_service_collection($container);
+ $this->service_collection->add('foo', 7);
+ $this->service_collection->add('bar', 3);
+ $this->service_collection->add('barfoo', 5);
+ $this->service_collection->add('foobar', 2);
+
+ parent::setUp();
+ }
+
+ public function test_service_collection()
+ {
+ $service_names = array();
+
+ // Test the iterator
+ foreach ($this->service_collection as $name => $service)
+ {
+ $service_names[] = $name;
+ $this->assertInstanceOf('StdClass', $service);
+ }
+
+ $this->assertSame(array('foobar', 'bar', 'barfoo', 'foo'), $service_names);
+ }
+}
diff --git a/tests/di/service_collection_test.php b/tests/di/service_collection_test.php
index 5b51254a4a..e78a5180b6 100644
--- a/tests/di/service_collection_test.php
+++ b/tests/di/service_collection_test.php
@@ -14,7 +14,7 @@
class phpbb_service_collection_test extends \phpbb_test_case
{
/**
- * @var \phpbb\di\service_collection
+ * @var \phpbb\di\service_collection\service_collection
*/
protected $service_collection;
@@ -24,7 +24,7 @@ class phpbb_service_collection_test extends \phpbb_test_case
$container->set('foo', new StdClass);
$container->set('bar', new StdClass);
- $this->service_collection = new \phpbb\di\service_collection($container);
+ $this->service_collection = new \phpbb\di\service_collection\service_collection($container);
$this->service_collection->add('foo');
$this->service_collection->add('bar');