12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879 |
- <?php
- namespace Doctrine\Tests\Common\Cache;
- use Doctrine\Common\Cache\Cache;
- use Doctrine\Common\Cache\PredisCache;
- use Predis\Client;
- use Predis\Connection\ConnectionException;
- class PredisCacheTest extends CacheTest
- {
- private $client;
- public function setUp()
- {
- if (!class_exists('Predis\Client')) {
- $this->markTestSkipped('Predis\Client is missing. Make sure to "composer install" to have all dev dependencies.');
- }
- $this->client = new Client();
- try {
- $this->client->connect();
- } catch (ConnectionException $e) {
- $this->markTestSkipped('The ' . __CLASS__ .' requires the use of redis');
- }
- }
- public function testHitMissesStatsAreProvided()
- {
- $cache = $this->_getCacheDriver();
- $stats = $cache->getStats();
- $this->assertNotNull($stats[Cache::STATS_HITS]);
- $this->assertNotNull($stats[Cache::STATS_MISSES]);
- }
- /**
- * @return PredisCache
- */
- protected function _getCacheDriver()
- {
- return new PredisCache($this->client);
- }
- /**
- * {@inheritDoc}
- *
- * @dataProvider provideDataToCache
- */
- public function testSetContainsFetchDelete($value)
- {
- if (array() === $value) {
- $this->markTestIncomplete(
- 'Predis currently doesn\'t support saving empty array values. '
- . 'See https://github.com/nrk/predis/issues/241'
- );
- }
- parent::testSetContainsFetchDelete($value);
- }
- /**
- * {@inheritDoc}
- *
- * @dataProvider provideDataToCache
- */
- public function testUpdateExistingEntry($value)
- {
- if (array() === $value) {
- $this->markTestIncomplete(
- 'Predis currently doesn\'t support saving empty array values. '
- . 'See https://github.com/nrk/predis/issues/241'
- );
- }
- parent::testUpdateExistingEntry($value);
- }
- }
|