]> git.immae.eu Git - github/shaarli/Shaarli.git/blobdiff - tests/ConfigTest.php
Replace $GLOBALS configuration with the configuration manager in the whole code base
[github/shaarli/Shaarli.git] / tests / ConfigTest.php
diff --git a/tests/ConfigTest.php b/tests/ConfigTest.php
deleted file mode 100644 (file)
index 7200aae..0000000
+++ /dev/null
@@ -1,244 +0,0 @@
-<?php
-/**
- * Config' tests
- */
-
-require_once 'application/Config.php';
-
-/**
- * Unitary tests for Shaarli config related functions
- */
-class ConfigTest extends PHPUnit_Framework_TestCase
-{
-    // Configuration input set.
-    private static $configFields;
-
-    /**
-     * Executed before each test.
-     */
-    public function setUp()
-    {
-        self::$configFields = array(
-            'login' => 'login',
-            'hash' => 'hash',
-            'salt' => 'salt',
-            'timezone' => 'Europe/Paris',
-            'title' => 'title',
-            'titleLink' => 'titleLink',
-            'redirector' => '',
-            'disablesessionprotection' => false,
-            'privateLinkByDefault' => false,
-            'config' => array(
-                'CONFIG_FILE' => 'tests/config.php',
-                'DATADIR' => 'tests',
-                'config1' => 'config1data',
-                'config2' => 'config2data',
-            )
-        );
-    }
-
-    /**
-     * Executed after each test.
-     *
-     * @return void
-     */
-    public function tearDown()
-    {
-        if (is_file(self::$configFields['config']['CONFIG_FILE'])) {
-            unlink(self::$configFields['config']['CONFIG_FILE']);
-        }
-    }
-
-    /**
-     * Test writeConfig function, valid use case, while being logged in.
-     */
-    public function testWriteConfig()
-    {
-        writeConfig(self::$configFields, true);
-
-        include self::$configFields['config']['CONFIG_FILE'];
-        $this->assertEquals(self::$configFields['login'], $GLOBALS['login']);
-        $this->assertEquals(self::$configFields['hash'], $GLOBALS['hash']);
-        $this->assertEquals(self::$configFields['salt'], $GLOBALS['salt']);
-        $this->assertEquals(self::$configFields['timezone'], $GLOBALS['timezone']);
-        $this->assertEquals(self::$configFields['title'], $GLOBALS['title']);
-        $this->assertEquals(self::$configFields['titleLink'], $GLOBALS['titleLink']);
-        $this->assertEquals(self::$configFields['redirector'], $GLOBALS['redirector']);
-        $this->assertEquals(self::$configFields['disablesessionprotection'], $GLOBALS['disablesessionprotection']);
-        $this->assertEquals(self::$configFields['privateLinkByDefault'], $GLOBALS['privateLinkByDefault']);
-        $this->assertEquals(self::$configFields['config']['config1'], $GLOBALS['config']['config1']);
-        $this->assertEquals(self::$configFields['config']['config2'], $GLOBALS['config']['config2']);
-    }
-
-    /**
-     * Test writeConfig option while logged in:
-     *      1. init fields.
-     *      2. update fields, add new sub config, add new root config.
-     *      3. rewrite config.
-     *      4. check result.
-     */
-    public function testWriteConfigFieldUpdate()
-    {
-        writeConfig(self::$configFields, true);
-        self::$configFields['title'] = 'ok';
-        self::$configFields['config']['config1'] = 'ok';
-        self::$configFields['config']['config_new'] = 'ok';
-        self::$configFields['new'] = 'should not be saved';
-        writeConfig(self::$configFields, true);
-
-        include self::$configFields['config']['CONFIG_FILE'];
-        $this->assertEquals('ok', $GLOBALS['title']);
-        $this->assertEquals('ok', $GLOBALS['config']['config1']);
-        $this->assertEquals('ok', $GLOBALS['config']['config_new']);
-        $this->assertFalse(isset($GLOBALS['new']));
-    }
-
-    /**
-     * Test writeConfig function with an empty array.
-     *
-     * @expectedException MissingFieldConfigException
-     */
-    public function testWriteConfigEmpty()
-    {
-        writeConfig(array(), true);
-    }
-
-    /**
-     * Test writeConfig function with a missing mandatory field.
-     *
-     * @expectedException MissingFieldConfigException
-     */
-    public function testWriteConfigMissingField()
-    {
-        unset(self::$configFields['login']);
-        writeConfig(self::$configFields, true);
-    }
-
-    /**
-     * Test writeConfig function while being logged out, and there is no config file existing.
-     */
-    public function testWriteConfigLoggedOutNoFile()
-    {
-        writeConfig(self::$configFields, false);
-    }
-
-    /**
-     * Test writeConfig function while being logged out, and a config file already exists.
-     *
-     * @expectedException UnauthorizedConfigException
-     */
-    public function testWriteConfigLoggedOutWithFile()
-    {
-        file_put_contents(self::$configFields['config']['CONFIG_FILE'], '');
-        writeConfig(self::$configFields, false);
-    }
-
-    /**
-     * Test save_plugin_config with valid data.
-     *
-     * @throws PluginConfigOrderException
-     */
-    public function testSavePluginConfigValid()
-    {
-        $data = array(
-            'order_plugin1' => 2,   // no plugin related
-            'plugin2' => 0,         // new - at the end
-            'plugin3' => 0,         // 2nd
-            'order_plugin3' => 8,
-            'plugin4' => 0,         // 1st
-            'order_plugin4' => 5,
-        );
-
-        $expected = array(
-            'plugin3',
-            'plugin4',
-            'plugin2',
-        );
-
-        $out = save_plugin_config($data);
-        $this->assertEquals($expected, $out);
-    }
-
-    /**
-     * Test save_plugin_config with invalid data.
-     *
-     * @expectedException              PluginConfigOrderException
-     */
-    public function testSavePluginConfigInvalid()
-    {
-        $data = array(
-            'plugin2' => 0,
-            'plugin3' => 0,
-            'order_plugin3' => 0,
-            'plugin4' => 0,
-            'order_plugin4' => 0,
-        );
-
-        save_plugin_config($data);
-    }
-
-    /**
-     * Test save_plugin_config without data.
-     */
-    public function testSavePluginConfigEmpty()
-    {
-        $this->assertEquals(array(), save_plugin_config(array()));
-    }
-
-    /**
-     * Test validate_plugin_order with valid data.
-     */
-    public function testValidatePluginOrderValid()
-    {
-        $data = array(
-            'order_plugin1' => 2,
-            'plugin2' => 0,
-            'plugin3' => 0,
-            'order_plugin3' => 1,
-            'plugin4' => 0,
-            'order_plugin4' => 5,
-        );
-
-        $this->assertTrue(validate_plugin_order($data));
-    }
-
-    /**
-     * Test validate_plugin_order with invalid data.
-     */
-    public function testValidatePluginOrderInvalid()
-    {
-        $data = array(
-            'order_plugin1' => 2,
-            'order_plugin3' => 1,
-            'order_plugin4' => 1,
-        );
-
-        $this->assertFalse(validate_plugin_order($data));
-    }
-
-    /**
-     * Test load_plugin_parameter_values.
-     */
-    public function testLoadPluginParameterValues()
-    {
-        $plugins = array(
-            'plugin_name' => array(
-                'parameters' => array(
-                    'param1' => true,
-                    'param2' => false,
-                    'param3' => '',
-                )
-            )
-        );
-
-        $parameters = array(
-            'param1' => 'value1',
-            'param2' => 'value2',
-        );
-
-        $result = load_plugin_parameter_values($plugins, $parameters);
-        $this->assertEquals('value1', $result['plugin_name']['parameters']['param1']);
-        $this->assertEquals('value2', $result['plugin_name']['parameters']['param2']);
-        $this->assertEquals('', $result['plugin_name']['parameters']['param3']);
-    }
-}