aboutsummaryrefslogtreecommitdiffstats
path: root/tests/extension/manager_test.php
diff options
context:
space:
mode:
authorTristan Darricau <github@nicofuma.fr>2014-07-13 15:44:58 +0200
committerTristan Darricau <github@nicofuma.fr>2014-07-13 18:09:34 +0200
commit519e64205a50b15efa8589901c87f5b21448993a (patch)
tree82ab03bbf7315f42857d45badd32b00a636c8c49 /tests/extension/manager_test.php
parentdd78b564e56152be559b4ec476e35698fa32e1bf (diff)
downloadforums-519e64205a50b15efa8589901c87f5b21448993a.tar
forums-519e64205a50b15efa8589901c87f5b21448993a.tar.gz
forums-519e64205a50b15efa8589901c87f5b21448993a.tar.bz2
forums-519e64205a50b15efa8589901c87f5b21448993a.tar.xz
forums-519e64205a50b15efa8589901c87f5b21448993a.zip
[ticket/12847] Allow the extensions to say if they can be enabled
PHPBB3-12847
Diffstat (limited to 'tests/extension/manager_test.php')
-rw-r--r--tests/extension/manager_test.php15
1 files changed, 14 insertions, 1 deletions
diff --git a/tests/extension/manager_test.php b/tests/extension/manager_test.php
index 230c90c7c7..67e12e4260 100644
--- a/tests/extension/manager_test.php
+++ b/tests/extension/manager_test.php
@@ -13,6 +13,7 @@
require_once dirname(__FILE__) . '/ext/vendor2/bar/ext.php';
require_once dirname(__FILE__) . '/ext/vendor2/foo/ext.php';
+require_once dirname(__FILE__) . '/ext/vendor3/foo/ext.php';
require_once dirname(__FILE__) . '/ext/vendor/moo/ext.php';
class phpbb_extension_manager_test extends phpbb_database_test_case
@@ -35,7 +36,7 @@ class phpbb_extension_manager_test extends phpbb_database_test_case
public function test_all_available()
{
// barfoo and vendor3/bar should not listed due to missing composer.json. barfoo also has incorrect dir structure.
- $this->assertEquals(array('vendor/moo', 'vendor2/bar', 'vendor2/foo'), array_keys($this->extension_manager->all_available()));
+ $this->assertEquals(array('vendor/moo', 'vendor2/bar', 'vendor2/foo', 'vendor3/foo'), array_keys($this->extension_manager->all_available()));
}
public function test_all_enabled()
@@ -100,6 +101,18 @@ class phpbb_extension_manager_test extends phpbb_database_test_case
$this->assertEquals(4, vendor2\bar\ext::$state);
}
+ public function test_enable_not_enableable()
+ {
+ vendor3\foo\ext::$enabled = false;
+
+ $this->assertEquals(array('vendor2/foo'), array_keys($this->extension_manager->all_enabled()));
+ $this->extension_manager->enable('vendor3/foo');
+ $this->assertEquals(array('vendor2/foo'), array_keys($this->extension_manager->all_enabled()));
+ $this->assertEquals(array('vendor/moo', 'vendor2/foo'), array_keys($this->extension_manager->all_configured()));
+
+ $this->assertSame(false, vendor3\foo\ext::$enabled);
+ }
+
public function test_disable()
{
vendor2\foo\ext::$disabled = false;