File indexing completed on 2025-05-04 05:33:13
0001 <?php 0002 /** 0003 * ocs-webserver 0004 * 0005 * Copyright 2016 by pling GmbH. 0006 * 0007 * This file is part of ocs-webserver. 0008 * 0009 * This program is free software: you can redistribute it and/or modify 0010 * it under the terms of the GNU Affero General Public License as 0011 * published by the Free Software Foundation, either version 3 of the 0012 * License, or (at your option) any later version. 0013 * 0014 * This program is distributed in the hope that it will be useful, 0015 * but WITHOUT ANY WARRANTY; without even the implied warranty of 0016 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 0017 * GNU Affero General Public License for more details. 0018 * 0019 * You should have received a copy of the GNU Affero General Public License 0020 * along with this program. If not, see <http://www.gnu.org/licenses/>. 0021 **/ 0022 0023 class HomeControllerTest extends Zend_Test_PHPUnit_ControllerTestCase 0024 { 0025 0026 public function setUp() 0027 { 0028 require_once APPLICATION_LIB . '/Local/Application.php'; 0029 0030 // Create application, bootstrap, and run 0031 $this->bootstrap = new Local_Application( 0032 APPLICATION_ENV, 0033 Zend_Registry::get('configuration'), 0034 Zend_Registry::get('cache') 0035 ); 0036 0037 parent::setUp(); 0038 } 0039 0040 public function tearDown() 0041 { 0042 Zend_Controller_Front::getInstance()->resetInstance(); 0043 $this->resetRequest(); 0044 $this->resetResponse(); 0045 0046 $this->request->setPost(array()); 0047 $this->request->setQuery(array()); 0048 } 0049 0050 public function testHomepage() 0051 { 0052 $this->dispatch('/'); 0053 $this->assertController('home'); 0054 $this->assertAction('index'); 0055 $this->assertResponseCode(200); 0056 } 0057 0058 public function testSetLayoutDefault() 0059 { 0060 $this->dispatch('/'); 0061 0062 $this->assertController('home'); 0063 $this->assertAction('index'); 0064 $this->assertResponseCode(200); 0065 $layout = Zend_Layout::getMvcInstance(); 0066 $this->assertEquals('home_template', $layout->getLayout()); 0067 } 0068 0069 public function testSetLayoutExample() 0070 { 0071 $_SERVER['REQUEST_URI'] = '/'; 0072 $_SERVER['SERVER_NAME'] = 'expert.pling.cc'; 0073 $_SERVER['HTTP_HOST'] = 'expert.pling.cc'; 0074 $this->dispatch('/'); 0075 $this->assertController('home'); 0076 $this->assertAction('index'); 0077 $this->assertResponseCode(200); 0078 $layout = Zend_Layout::getMvcInstance(); 0079 $this->assertEquals('home_template', $layout->getLayout()); 0080 } 0081 0082 public function testSetLayoutOcsStore() 0083 { 0084 $_SERVER['REQUEST_URI'] = '/'; 0085 $_SERVER['SERVER_NAME'] = 'ocsstore.pling.cc'; 0086 $_SERVER['HTTP_HOST'] = 'ocsstore.pling.cc'; 0087 $this->dispatch('/'); 0088 $this->assertController('home'); 0089 $this->assertAction('index'); 0090 $this->assertResponseCode(200); 0091 $layout = Zend_Layout::getMvcInstance(); 0092 $this->assertEquals('home_ocsstore', $layout->getLayout()); 0093 } 0094 0095 } 0096