From d6199e755fa30e238c418737c3af16c4fccf46f1 Mon Sep 17 00:00:00 2001 From: Ghislain Loas <ghislo@sandbox.pergame.net> Date: Wed, 28 Jan 2015 16:58:05 +0100 Subject: [PATCH] dev #17514 remove Zend_Registry::get('cache') and set --- .../admin/controllers/IndexController.php | 2 +- library/startup.php | 19 +--------- .../admin/controllers/IndexControllerTest.php | 17 ++++++++- .../controllers/CasServerControllerTest.php | 38 ++++++++++--------- .../controllers/CasServerControllerTest.php | 6 +-- tests/bootstrap.php | 5 +-- .../ZendAfi/View/Helper/Accueil/CacheTest.php | 23 ++++++----- .../View/Helper/ViewHelperTestCase.php | 2 +- 8 files changed, 55 insertions(+), 57 deletions(-) diff --git a/application/modules/admin/controllers/IndexController.php b/application/modules/admin/controllers/IndexController.php index 36b57acc04d..ae254a39500 100644 --- a/application/modules/admin/controllers/IndexController.php +++ b/application/modules/admin/controllers/IndexController.php @@ -119,7 +119,7 @@ class Admin_IndexController extends ZendAfi_Controller_Action { public function clearcacheAction() { - Zend_Registry::get('cache')->clean(Zend_Cache::CLEANING_MODE_ALL); + (new Storm_Cache())->clean(); $this->_redirect('admin/index/adminvar'); } diff --git a/library/startup.php b/library/startup.php index fa492279cb0..922cbd1e56a 100644 --- a/library/startup.php +++ b/library/startup.php @@ -48,14 +48,12 @@ function setupOpac() { } - function defineConstant($name, $value) { if (!defined($name)) define($name, $value); } - function setupConstants() { defineConstant('BOKEH_MAJOR_VERSION','6.60'); defineConstant('BOKEH_RELEASE_NUMBER', BOKEH_MAJOR_VERSION . '.0'); @@ -130,14 +128,11 @@ function loadConfig($config_init_file_path = './config.ini') { } - - function setupCache($cfg) { if (Class_Users::isCurrentUserCanAccesBackend()) return; - $frontendOptions = [ - 'lifetime' => CACHE_LIFETIME, // durée du cache: 1h + $frontendOptions = ['lifetime' => CACHE_LIFETIME, // durée du cache: 1h 'automatic_serialization' => false, 'caching' => true]; @@ -153,14 +148,12 @@ function setupCache($cfg) { $frontendOptions, $backendOptions); // $cache->clean(Zend_Cache::CLEANING_MODE_ALL); - Zend_Registry::set('cache', $cache); + Storm_Cache::setDefaultZendCache($cache); Storm_Cache::setSeed($cfg->sgbd->config->dbname); } - - function setupSession($cfg) { // Start Session $session = new Zend_Session_Namespace(md5(BASE_URL)); @@ -174,7 +167,6 @@ function setupSession($cfg) { } - function setupLanguage() { Zend_Locale::setDefault(Class_AdminVar::getDefaultLanguage()); Zend_Registry::set('locale', new Zend_Locale()); @@ -191,8 +183,6 @@ function setupLanguage() { } - - function setupDatabase($cfg) { // setup database $sql = Zend_Db::factory($cfg->sgbd->adapter, $cfg->sgbd->config->toArray()); @@ -206,7 +196,6 @@ function setupDatabase($cfg) { } - function setupDevOptions($cfg) { //permet d'activer les fonctions en développement if (null !== $experimental_dev = $cfg->get('experimental_dev')) @@ -214,8 +203,6 @@ function setupDevOptions($cfg) { } - - function setupControllerActionHelper() { Zend_Controller_Action_HelperBroker::resetHelpers(); Zend_Controller_Action_HelperBroker::addHelper(new ZendAfi_Controller_Action_Helper_ViewRenderer()); @@ -223,8 +210,6 @@ function setupControllerActionHelper() { } - - function setupHTTPClient($cfg) { //set up HTTP Client to use proxy settings $httpClient = new Zend_Http_Client(); diff --git a/tests/application/modules/admin/controllers/IndexControllerTest.php b/tests/application/modules/admin/controllers/IndexControllerTest.php index e150d634fba..8ab74d02ab3 100644 --- a/tests/application/modules/admin/controllers/IndexControllerTest.php +++ b/tests/application/modules/admin/controllers/IndexControllerTest.php @@ -16,7 +16,7 @@ * * You should have received a copy of the GNU AFFERO GENERAL PUBLIC LICENSE * along with BOKEH; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ require_once 'AdminAbstractControllerTestCase.php'; @@ -59,4 +59,17 @@ class IndexControllerHeartBeatTest extends Admin_AbstractControllerTestCase { } -?> \ No newline at end of file + +class IndexControllerClearCacheActionTest extends Admin_AbstractControllerTestCase { + public function setUp() { + parent::setUp(); + Storm_Cache::beVolatile(); + $this->dispatch('/admin/index/clearcache', true); + } + + + /** @test */ + public function clearCacheShouldRedirectToAdminVar() { + $this->assertRedirectTo('/admin/index/adminvar'); + } +} \ No newline at end of file diff --git a/tests/application/modules/opac/controllers/CasServerControllerTest.php b/tests/application/modules/opac/controllers/CasServerControllerTest.php index df8fb101251..c67cef6acd8 100644 --- a/tests/application/modules/opac/controllers/CasServerControllerTest.php +++ b/tests/application/modules/opac/controllers/CasServerControllerTest.php @@ -16,7 +16,7 @@ * * You should have received a copy of the GNU AFFERO GENERAL PUBLIC LICENSE * along with BOKEH; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ @@ -26,46 +26,47 @@ class CasServerControllerValidateActionTest extends AbstractControllerTestCase { public function setUp() { parent::setUp(); + Storm_Cache::beVolatile(); $user = new StdClass(); $user->ID_USER=300; - Class_Users::newInstanceWithId(300, + Class_Users::newInstanceWithId(300, ['login' => '87364', 'pseudo' => 'georges']); - Zend_Registry::get('cache')->save('300', - md5(Zend_Session::getId().'300')); + (new Storm_Cache())->save('300', + md5(Zend_Session::getId().'300')); } - + /** @test */ - public function requestWithNoTicketShouldRespondinvalidRequestFailureXML() { + public function requestWithNoTicketShouldRespondinvalidRequestFailureXML() { $this->dispatch('/opac/cas-server/validate?service=http://test.com'); $this->assertContains('<cas:authenticationFailure code="INVALID_REQUEST">',$this->_response->getBody()); } /** @test */ - public function requestWithInvalidTicketShouldRespondInvalidTicketFailureXML() { + public function requestWithInvalidTicketShouldRespondInvalidTicketFailureXML() { $this->dispatch('/opac/cas-server/validate?ticket=STmarchepo&service=http://test.com',true); $this->assertContains('<cas:authenticationFailure code="INVALID_TICKET"> Ticket STmarchepo not recognized</cas:authenticationFailure>',$this->_response->getBody()); } /** @test */ - public function requestWithInvalidTicketOnAuthShouldRespondInvalidTicketFailureXML() { + public function requestWithInvalidTicketOnAuthShouldRespondInvalidTicketFailureXML() { $this->dispatch('/opac/auth/validate?ticket=STmarchepo&service=http://test.com',true); $this->assertContains('<cas:authenticationFailure code="INVALID_TICKET"> Ticket STmarchepo not recognized</cas:authenticationFailure>',$this->_response->getBody()); } /** @test */ - public function requestWithValidTicketShouldRespondValidXML() { + public function requestWithValidTicketShouldRespondValidXML() { $this->dispatch('/opac/cas-server/validate?ticket='.md5(Zend_Session::getId().'300').'&service=http://test.com'); $this->assertContains('<cas:user>300</cas:user>',$this->_response->getBody()); $this->assertContains('<cas:proxyGrantingTicket>',$this->_response->getBody()); } /** @test */ - public function requestWithValidTicketPrefixedBySTShouldRespondValidXML() { + public function requestWithValidTicketPrefixedBySTShouldRespondValidXML() { $this->dispatch('/opac/cas-server/validate?ticket=ST-'.md5(Zend_Session::getId().'300').'&service=http://test.com'); $this->assertContains('<cas:user>300</cas:user>',$this->_response->getBody()); $this->assertContains('<cas:proxyGrantingTicket>',$this->_response->getBody()); @@ -73,20 +74,20 @@ class CasServerControllerValidateActionTest extends AbstractControllerTestCase { /** @test */ - public function requestWithValidTicketPrefixedBySTOnAuthenticateControllerShouldRespondValidXML() { + public function requestWithValidTicketPrefixedBySTOnAuthenticateControllerShouldRespondValidXML() { $this->dispatch('/opac/auth/validate?ticket=ST-'.md5(Zend_Session::getId().'300').'&service=http://test.com'); $this->assertContains('<cas:user>300</cas:user>',$this->_response->getBody()); $this->assertContains('<cas:proxyGrantingTicket>',$this->_response->getBody()); } - /** + /** * see http://www.jasig.org/cas/protocol#validate-cas-1.0 - * @test + * @test */ public function validateOnCasOneZeroWithValidTicketShouldAnswerYesLFUsernameLogin() { $this->dispatch( - '/opac/cas-server-v10/validate?ticket=ST-'.md5(Zend_Session::getId().'300').'&service=http://test.com', + '/opac/cas-server-v10/validate?ticket=ST-'.md5(Zend_Session::getId().'300').'&service=http://test.com', true); $this->assertEquals('yes'.chr(10).'georges|87364'.chr(10), $this->_response->getBody()); } @@ -95,7 +96,7 @@ class CasServerControllerValidateActionTest extends AbstractControllerTestCase { /** @test */ public function validateOnCasOneZeroWithInValidTicketShouldAnswerNoLF() { $this->dispatch( - '/opac/cas-server-v10/validate?ticket=zork&service=http://test.com', + '/opac/cas-server-v10/validate?ticket=zork&service=http://test.com', true); $this->assertEquals('no'.chr(10), $this->_response->getBody()); } @@ -142,22 +143,23 @@ class CasServerControllerMusicMeValidateActionTest extends AbstractControllerTes public function setUp() { parent::setUp(); + Storm_Cache::beVolatile(); $tom = Class_Users::newInstanceWithId(300, ['nom' => 'Ate', 'prenom' => 'Tom']); ZendAfi_Auth::getInstance()->logUser($tom); } - + /** @test */ - public function requestMusicMeWithNoTicketShouldRespondAccountDisabledXML() { + public function requestMusicMeWithNoTicketShouldRespondAccountDisabledXML() { $this->dispatch('/opac/cas-server/validate-musicme?MediaLibraryID=150&ticket=ST-0a1b2c3d'); $this->assertContains('<User />',$this->_response->getBody()); } /** @test */ - public function requestMusicMeWithValidTicketShouldRespondValidXML() { + public function requestMusicMeWithValidTicketShouldRespondValidXML() { $this->dispatch('/opac/cas-server/validate-musicme?ticket=ST-'.md5(Zend_Session::getId().'300').'&MediaLibraryID=http://test.com'); $this->assertContains('<ID>300</ID>',$this->_response->getBody()); } diff --git a/tests/application/modules/telephone/controllers/CasServerControllerTest.php b/tests/application/modules/telephone/controllers/CasServerControllerTest.php index 7e98fe2249a..745f4700baf 100644 --- a/tests/application/modules/telephone/controllers/CasServerControllerTest.php +++ b/tests/application/modules/telephone/controllers/CasServerControllerTest.php @@ -24,14 +24,14 @@ require_once 'TelephoneAbstractControllerTestCase.php'; class Telephone_CasServerControllerLoggedTest extends TelephoneAbstractControllerTestCase { public function setUp() { parent::setUp(); + Storm_Cache::beVolatile(); $user = new StdClass(); $user->ID_USER=300; Class_Users::newInstanceWithId(300, ['login' => '87364', 'pseudo' => 'georges']); - Zend_Registry::get('cache')->save('300', - md5(Zend_Session::getId().'300')); - + (new Storm_Cache())->save('300', + md5(Zend_Session::getId().'300')); } /** @test */ diff --git a/tests/bootstrap.php b/tests/bootstrap.php index 3c0d2efbce7..866127bfa7c 100644 --- a/tests/bootstrap.php +++ b/tests/bootstrap.php @@ -16,7 +16,7 @@ * * You should have received a copy of the GNU AFFERO GENERAL PUBLIC LICENSE * along with BOKEH; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ chdir(realpath(dirname(__FILE__)).'/../'); @@ -56,7 +56,7 @@ defineConstant("URL_SHARED_IMG", BASE_URL . "/public/opac/images"); setupOpac(); -Zend_Registry::get('cache')->setOption('caching', true); +(new Storm_Cache())->getCache()->setOption('caching', true); $db_cache = Zend_Cache::factory('Core', 'File', @@ -66,7 +66,6 @@ $db_cache = Zend_Cache::factory('Core', Zend_Db_Table_Abstract::setDefaultMetadataCache($db_cache); - Storm_Cache::setSeed('local'); $cfg = new Zend_Config(Zend_Registry::get('cfg')->toArray(), true); diff --git a/tests/library/ZendAfi/View/Helper/Accueil/CacheTest.php b/tests/library/ZendAfi/View/Helper/Accueil/CacheTest.php index 10b0e75ea76..f9fba49b7af 100644 --- a/tests/library/ZendAfi/View/Helper/Accueil/CacheTest.php +++ b/tests/library/ZendAfi/View/Helper/Accueil/CacheTest.php @@ -16,7 +16,7 @@ * * You should have received a copy of the GNU AFFERO GENERAL PUBLIC LICENSE * along with BOKEH; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ require_once 'library/ZendAfi/View/Helper/ViewHelperTestCase.php'; @@ -26,18 +26,17 @@ class CacheWithCritiquesTest extends ViewHelperTestCase { public function setUp() { parent::setUp(); - $cfg = new Zend_Config(['sgbd'=>['config'=>['dbname'=>'dbTest']]]); - setupCache($cfg); - - $params = array('type_module' => 'CRITIQUES', - 'division' => 2, - 'preferences' => array('boite' => 'boite_vide', - 'titre' => 'Critiques', - 'rss_avis' => false, - 'display_order' => 'Random', - 'only_img' => true)); + Storm_Cache::beVolatile(); - $this->avis_loader = $this->getMock('MockLoader', array('getAvisFromPreferences')); + $params = ['type_module' => 'CRITIQUES', + 'division' => 2, + 'preferences' => ['boite' => 'boite_vide', + 'titre' => 'Critiques', + 'rss_avis' => false, + 'display_order' => 'Random', + 'only_img' => true]]; + + $this->avis_loader = $this->getMock('MockLoader', ['getAvisFromPreferences']); Storm_Model_Abstract::setLoaderFor('Class_AvisNotice', $this->avis_loader); $this->critiques_helper = new ZendAfi_View_Helper_Accueil_Critiques(2, $params); diff --git a/tests/library/ZendAfi/View/Helper/ViewHelperTestCase.php b/tests/library/ZendAfi/View/Helper/ViewHelperTestCase.php index 2872f6def54..a78ce5bbc60 100644 --- a/tests/library/ZendAfi/View/Helper/ViewHelperTestCase.php +++ b/tests/library/ZendAfi/View/Helper/ViewHelperTestCase.php @@ -129,7 +129,7 @@ abstract class ViewHelperTestCase extends PHPUnit_Framework_TestCase { protected function tearDown() { Storm_Model_Abstract::unsetLoaders(); - Zend_Registry::get('cache')->clean(); + (new Storm_Cache)->clean(); $this->logout(); } -- GitLab