Skip to content
Snippets Groups Projects
Commit 76ec13e6 authored by pbarroca's avatar pbarroca
Browse files

Tests: introduction mock manquant

parent 8ba37a72
No related merge requests found
......@@ -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
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment