/** * Test prepending extension dirs and removing */ public function testOverrideDirScopesExtensionRemove() { $ini = new eZINI('site.ini', 'settings', null, null, true); $ini->resetOverrideDirs(); $ini->prependOverrideDir("extension/ext1/settings", true, 'extension:ext1', 'extension'); $ini->prependOverrideDir("extension/ext2/settings", true, 'extension:ext2', 'extension'); $ini->prependOverrideDir("extension/ext3/settings", true, 'extension:ext3', 'extension'); $ini->prependOverrideDir("extension/ext1/settings", true, 'extension:ext1', 'sa-extension'); $ini->removeOverrideDir('extension:ext1'); $success = $ini->removeOverrideDir('extension:ext1', 'sa-extension'); $failed = $ini->removeOverrideDir('extension:ext8'); $overrideDirs = $ini->overrideDirs(false); self::assertEquals(3, count($ini->overrideDirs()), 'There should have been three override dirs in total in this ini instance.'); self::assertEquals(2, count($overrideDirs['extension']), 'There should have been two override dirs in extension scope.'); self::assertEquals(0, count($overrideDirs['sa-extension']), 'There should have been 0 override dirs in sa-extension scope.'); self::assertTrue($success, '$ini->removeOverrideDir( \'extension:ext1\', \'sa-extension\' ) should have been returned true as identifier does exist.'); self::assertFalse($failed, '$ini->removeOverrideDir( \'extension:ext8\' ) should have been returned false as identifier does not exist.'); }