Browse Source

Allow aliasing connections that aren't configured yet

Corey Taylor 4 years ago
parent
commit
511792e388

+ 0 - 7
src/Datasource/ConnectionManager.php

@@ -153,16 +153,9 @@ class ConnectionManager
      * @param string $source The existing connection to alias.
      * @param string $alias The alias name that resolves to `$source`.
      * @return void
-     * @throws \Cake\Datasource\Exception\MissingDatasourceConfigException When aliasing a
-     * connection that does not exist.
      */
     public static function alias(string $source, string $alias): void
     {
-        if (empty(static::$_config[$source])) {
-            throw new MissingDatasourceConfigException(
-                sprintf('Cannot create alias of "%s" as it does not exist.', $source)
-            );
-        }
         static::$_aliasMap[$alias] = $source;
     }
 

+ 0 - 11
tests/TestCase/Datasource/ConnectionManagerTest.php

@@ -16,7 +16,6 @@ namespace Cake\Test\TestCase\Datasource;
 use BadMethodCallException;
 use Cake\Core\Exception\CakeException;
 use Cake\Datasource\ConnectionManager;
-use Cake\Datasource\Exception\MissingDatasourceConfigException;
 use Cake\Datasource\Exception\MissingDatasourceException;
 use Cake\TestSuite\TestCase;
 use InvalidArgumentException;
@@ -199,16 +198,6 @@ class ConnectionManagerTest extends TestCase
     }
 
     /**
-     * Test alias() raises an error when aliasing an undefined connection.
-     */
-    public function testAliasError(): void
-    {
-        $this->expectException(MissingDatasourceConfigException::class);
-        $this->assertNotContains('test_kaboom', ConnectionManager::configured());
-        ConnectionManager::alias('test_kaboom', 'other_name');
-    }
-
-    /**
      * provider for DSN strings.
      *
      * @return array