CacheBehaviorTestCase::testUseDifferentCacheConfig PHP Метод

testUseDifferentCacheConfig() публичный Метод

    function testUseDifferentCacheConfig()
    {
        Cache::config('cacheTest', array('engine' => 'File', 'duration' => '+20 minutes', 'path' => CACHE, 'prefix' => 'different_file_engine_'));
        $this->CacheData->Behaviors->attach('Cacher.Cache', array('clearOnDelete' => false, 'config' => 'cacheTest'));
        $results = $this->CacheData->find('all', array('conditions' => array('CacheData.name LIKE' => '%cache%')));
        $results = Set::extract('/CacheData/name', $results);
        $expected = array('A Cached Thing', 'Cache behavior');
        $this->assertEquals($results, $expected);
        // test that it's pulling from the cache
        $this->CacheData->delete(1);
        $results = $this->CacheData->find('all', array('conditions' => array('CacheData.name LIKE' => '%cache%')));
        $results = Set::extract('/CacheData/name', $results);
        $expected = array('A Cached Thing', 'Cache behavior');
        $this->assertEquals($results, $expected);
        $ds = ConnectionManager::getDataSource('cacher');
        $this->assertEquals($ds->config['config'], 'cacheTest');
        $map = Cache::read('map', 'cacheTest');
        $this->assertTrue($map !== false);
        $this->assertTrue(isset($map[$ds->source->configKeyName][$this->CacheData->alias][0]));
        $cache = Cache::read($map[$ds->source->configKeyName][$this->CacheData->alias][0], 'cacheTest');
        $this->assertTrue($cache !== false);
        Cache::clear(false, 'cacheTest');
    }