From 76ec13e6a342728400d01b2f63ac4cf423ee49ca Mon Sep 17 00:00:00 2001 From: pbarroca <pbarroca@git-test.afi-sa.fr> Date: Tue, 11 Sep 2012 08:00:48 +0000 Subject: [PATCH] Tests: introduction mock manquant --- .../controllers/CatalogueControllerTest.php | 79 ++++++++++++------- 1 file changed, 51 insertions(+), 28 deletions(-) diff --git a/tests/application/modules/opac/controllers/CatalogueControllerTest.php b/tests/application/modules/opac/controllers/CatalogueControllerTest.php index d21dc9ac277..5a487d0498e 100644 --- a/tests/application/modules/opac/controllers/CatalogueControllerTest.php +++ b/tests/application/modules/opac/controllers/CatalogueControllerTest.php @@ -21,60 +21,83 @@ require_once 'AbstractControllerTestCase.php'; class CatalogueControllerAppelMenuTest extends AbstractControllerTestCase { + protected $_sql; + protected $_sql_mock; + + public function setUp() { + parent::setUp(); + + $this->_sql = Zend_Registry::get('sql'); + $this->_sql_mock = Storm_Test_ObjectWrapper::mock() + ->whenCalled('fetchOne') + ->answers(null) + + ->whenCalled('fetchAll') + ->answers([]); + + Zend_Registry::set('sql', $this->_sql_mock); + } + + + public function tearDown() { + Zend_Registry::set('sql', $this->_sql); + } + + /** *Test non regression chatenay: ecran blanc sur menu vertical *@test */ - function withWrongRequestShouldNotDoError500() { - $query = "titre=Le+Dispositif+Trace&aleatoire=1&tri=1&nb_notices=0&nb_analyse=50&id_catalogue=0&id_panier=139999&id_user=20001&reset=true"; - $_REQUEST = array(); - foreach (explode('&', $query) as $param) { - $params = explode('=', $param); - $_REQUEST[$params[0]] = $params[1]; - } + public function withWrongRequestShouldNotDoError500() { + $this->_dispatchQuery("titre=Le+Dispositif+Trace&aleatoire=1&tri=1&nb_notices=0&nb_analyse=50&id_catalogue=0&id_panier=139999&id_user=20001&reset=true"); - $this->dispatch('catalogue/appelmenu?'.$query); $this->assertXPathContentContains('//h2', 'Aucune notice trouvée'); } + /** - *Test non regression Pontault-Combault: ecran blanc sur lien catalogue - *@test + * Test non regression Pontault-Combault: ecran blanc sur lien catalogue + * @test */ - function getFacettesSqlError() { + public function getFacettesSqlError() { $catalogue_test = Class_Catalogue::getLoader() ->newInstanceWithId(151) ->setLibelle('nouveautés') ->setTypeDoc('1;3;4;5'); - $query = "titre=Catalogue&aleatoire=0&tri=1&nb_notices=+&nb_analyse=&id_catalogue=151&id_panier=0&id_user=0&reset=true"; - $this->_updateMagicREQUESTWith($query); - $this->dispatch('catalogue/appelmenu?'.$query, true); + $this->_dispatchQuery('titre=Catalogue&aleatoire=0&tri=1&nb_notices=+&nb_analyse=&id_catalogue=151&id_panier=0&id_user=0&reset=true'); + $this->assertXPathContentContains('//h1', 'Catalogue'); } - protected function _updateMagicREQUESTWith($query) { - $_REQUEST = array(); - foreach (explode('&', $query) as $param) { - $params = explode('=', $param); - $_REQUEST[$params[0]] = $params[1]; - } + /** @test */ + public function withFacettesRequestShouldNotThrowError() { + $this->_dispatchQuery("titre=Catalogue%20-%20Histoire&aleatoire=0&tri=0&nb_notices=0&nb_analyse=50&id_catalogue=12&id_panier=&id_user=0&PHPSESSID=e08025e8cf614198106cc7778f021b4c&facette=A27173"); + } + + + /** + * @param $query string + * @return CatalogueControllerAppelMenuTest + */ + protected function _dispatchQuery($query) { + $this->_updateMagicREQUESTWith($query); + $this->dispatch('catalogue/appelmenu?' . $query, true); return $this; } - /** @test */ - public function withFacettesRequestShouldNotThrowError() { - $query = "titre=Catalogue%20-%20Histoire&aleatoire=0&tri=0&nb_notices=0&nb_analyse=50&id_catalogue=12&id_panier=&id_user=0&PHPSESSID=e08025e8cf614198106cc7778f021b4c&facette=A27173"; + /** + * @param $query string + * @return CatalogueControllerAppelMenuTest + */ + protected function _updateMagicREQUESTWith($query) { $_REQUEST = array(); foreach (explode('&', $query) as $param) { $params = explode('=', $param); $_REQUEST[$params[0]] = $params[1]; } - - $this->dispatch('catalogue/appelmenu?'.$query); + return $this; } -} - -?> \ No newline at end of file +} \ No newline at end of file -- GitLab