|
|
|
@ -10,6 +10,7 @@ namespace yiiunit\framework\db;
|
|
|
|
|
use Yii; |
|
|
|
|
use yii\base\InvalidConfigException; |
|
|
|
|
use yii\caching\ArrayCache; |
|
|
|
|
use yii\caching\Cache; |
|
|
|
|
use yii\db\Connection; |
|
|
|
|
use yii\db\Transaction; |
|
|
|
|
|
|
|
|
@ -455,7 +456,7 @@ abstract class ConnectionTest extends DatabaseTestCase
|
|
|
|
|
|
|
|
|
|
public function testServerStatusCacheWorks() |
|
|
|
|
{ |
|
|
|
|
$cache = new ArrayCache(); |
|
|
|
|
$cache = new Cache(['handler' => new ArrayCache()]); |
|
|
|
|
Yii::$app->set('cache', $cache); |
|
|
|
|
|
|
|
|
|
$connection = $this->getConnection(true, false); |
|
|
|
@ -468,9 +469,9 @@ abstract class ConnectionTest extends DatabaseTestCase
|
|
|
|
|
|
|
|
|
|
$cacheKey = ['yii\db\Connection::openFromPoolSequentially', $connection->dsn]; |
|
|
|
|
|
|
|
|
|
$this->assertFalse($cache->exists($cacheKey)); |
|
|
|
|
$this->assertFalse($cache->has($cacheKey)); |
|
|
|
|
$connection->open(); |
|
|
|
|
$this->assertFalse($cache->exists($cacheKey), 'Connection was successful – cache must not contain information about this DSN'); |
|
|
|
|
$this->assertFalse($cache->has($cacheKey), 'Connection was successful – cache must not contain information about this DSN'); |
|
|
|
|
$connection->close(); |
|
|
|
|
|
|
|
|
|
$cacheKey = ['yii\db\Connection::openFromPoolSequentially', 'host:invalid']; |
|
|
|
@ -479,13 +480,13 @@ abstract class ConnectionTest extends DatabaseTestCase
|
|
|
|
|
$connection->open(); |
|
|
|
|
} catch (InvalidConfigException $e) { |
|
|
|
|
} |
|
|
|
|
$this->assertTrue($cache->exists($cacheKey), 'Connection was not successful – cache must contain information about this DSN'); |
|
|
|
|
$this->assertTrue($cache->has($cacheKey), 'Connection was not successful – cache must contain information about this DSN'); |
|
|
|
|
$connection->close(); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
public function testServerStatusCacheCanBeDisabled() |
|
|
|
|
{ |
|
|
|
|
$cache = new ArrayCache(); |
|
|
|
|
$cache = new Cache(['handler' => new ArrayCache()]); |
|
|
|
|
Yii::$app->set('cache', $cache); |
|
|
|
|
|
|
|
|
|
$connection = $this->getConnection(true, false); |
|
|
|
@ -499,9 +500,9 @@ abstract class ConnectionTest extends DatabaseTestCase
|
|
|
|
|
|
|
|
|
|
$cacheKey = ['yii\db\Connection::openFromPoolSequentially', $connection->dsn]; |
|
|
|
|
|
|
|
|
|
$this->assertFalse($cache->exists($cacheKey)); |
|
|
|
|
$this->assertFalse($cache->has($cacheKey)); |
|
|
|
|
$connection->open(); |
|
|
|
|
$this->assertFalse($cache->exists($cacheKey), 'Caching is disabled'); |
|
|
|
|
$this->assertFalse($cache->has($cacheKey), 'Caching is disabled'); |
|
|
|
|
$connection->close(); |
|
|
|
|
|
|
|
|
|
$cacheKey = ['yii\db\Connection::openFromPoolSequentially', 'host:invalid']; |
|
|
|
@ -510,7 +511,7 @@ abstract class ConnectionTest extends DatabaseTestCase
|
|
|
|
|
$connection->open(); |
|
|
|
|
} catch (InvalidConfigException $e) { |
|
|
|
|
} |
|
|
|
|
$this->assertFalse($cache->exists($cacheKey), 'Caching is disabled'); |
|
|
|
|
$this->assertFalse($cache->has($cacheKey), 'Caching is disabled'); |
|
|
|
|
$connection->close(); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|