Changeset 2082
- Timestamp:
- 02/10/09 13:48:36 (18 months ago)
- Location:
- framework/trunk/src
- Files:
-
- 2 added
- 12 modified
-
main/php/net/stubbles/lang/errorhandler/stubExceptionHandler.php (modified) (2 diffs)
-
main/php/net/stubbles/lang/stubMode.php (modified) (9 diffs)
-
main/php/net/stubbles/websites/ioc/stubWebsiteBindingModule.php (modified) (1 diff)
-
test/php/net/stubbles/ioc/stubAppTestCase.php (modified) (1 diff)
-
test/php/net/stubbles/lang/stubModeErrorHandlerTestCase.php (added)
-
test/php/net/stubbles/lang/stubModeExceptionHandlerTestCase.php (added)
-
test/php/net/stubbles/lang/stubModeTestCase.php (modified) (10 diffs)
-
test/php/net/stubbles/service/jsonrpc/subprocessors/stubJsonRpcAbstractGenerateSubProcessorTestCase.php (modified) (3 diffs)
-
test/php/net/stubbles/stubTestSuite.php (modified) (1 diff)
-
test/php/net/stubbles/websites/cache/stubGzipWebsiteCacheTestCase.php (modified) (2 diffs)
-
test/php/net/stubbles/websites/ioc/stubWebsiteBindingModuleTestCase.php (modified) (10 diffs)
-
test/php/net/stubbles/websites/stubFrontControllerTestCase.php (modified) (1 diff)
-
test/php/net/stubbles/websites/xml/generator/stubModeXMLGeneratorTestCase.php (modified) (3 diffs)
-
test/php/net/stubbles/websites/xml/skin/stubSkinGeneratorProviderTestCase.php (modified) (4 diffs)
Legend:
- Unmodified
- Added
- Removed
-
framework/trunk/src/main/php/net/stubbles/lang/errorhandler/stubExceptionHandler.php
r1763 r2082 3 3 * Interface for exception handlers. 4 4 * 5 * @author Frank Kleine <mikey@stubbles.net>6 5 * @package stubbles 7 6 * @subpackage lang_errorhandler 7 * @version $Id$ 8 8 */ 9 9 /** … … 23 23 public function handleException(Exception $exception); 24 24 } 25 ?> -
framework/trunk/src/main/php/net/stubbles/lang/stubMode.php
r1763 r2082 1 1 <?php 2 2 /** 3 * Enumfor different runtime modes of Stubbles.3 * Handlings for different runtime modes of Stubbles. 4 4 * 5 * @author Frank Kleine <mikey@stubbles.net>6 5 * @package stubbles 7 6 * @subpackage lang 7 * @version $Id$ 8 8 */ 9 stubClassLoader::load('net::stubbles::lang::stubEnum', 10 'net::stubbles::lang::exceptions::stubIllegalArgumentException' 11 ); 9 stubClassLoader::load('net::stubbles::lang::exceptions::stubIllegalArgumentException'); 12 10 /** 13 * Enumfor different runtime modes of Stubbles.11 * Handlings for different runtime modes of Stubbles. 14 12 * 15 * The mode instance s containinformation about which exception handler and13 * The mode instance contains information about which exception handler and 16 14 * which error handler should be used, else well as whether caching is enabled 17 * or not. Currently, there are four different modes available:18 * stubMode:: $PROD15 * or not. Currently, there are four different default modes available: 16 * stubMode::prod() 19 17 * - uses exception handler net::stubbles::lang::errorhandler::stubProdModeExceptionHandler 20 18 * - uses default error handler net::stubbles::lang::errorhandler::stubDefaultErrorHandler 21 19 * - caching enabled 22 * stubMode:: $TEST20 * stubMode::test() 23 21 * - uses exception handler net::stubbles::lang::errorhandler::stubDisplayExceptionHandler 24 22 * - uses default error handler net::stubbles::lang::errorhandler::stubDefaultErrorHandler 25 23 * - caching enabled 26 * stubMode:: $STAGE24 * stubMode::stage() 27 25 * - uses exception handler net::stubbles::lang::errorhandler::stubDisplayExceptionHandler 28 26 * - no error handler 29 27 * - caching disabled 30 * stubMode:: $DEV28 * stubMode::dev() 31 29 * - uses exception handler net::stubbles::lang::errorhandler::stubDisplayExceptionHandler 32 30 * - no error handler … … 34 32 * While stage and dev mode currently are not different this may change in 35 33 * future in case new mode depending switches become neccessary. 34 * 36 35 * To change the exception and/or error handler to be used, set the new ones 37 36 * via setExceptionHandler()/setErrorHandler(). … … 39 38 * this is not done automatically, regardless whether you set your own ones or 40 39 * not. Use registerExceptionHandler() and registerErrorHandler() to do so. 41 *42 * Additionally there exists stubMode::$CURRENT. This points to the currently43 * selected mode. Without further action this is stubMode::$PROD. You can set44 * the current mode with stubMode::setCurrent().45 40 * 46 41 * @package stubbles 47 42 * @subpackage lang 48 43 */ 49 class stubMode extends stub Enum44 class stubMode extends stubBaseObject 50 45 { 51 46 /** … … 58 53 const HANDLER_INSTANCE = 'instance'; 59 54 /** 60 * mode: production 61 * 62 * @var stubMode 63 */ 64 public static $PROD; 65 /** 66 * mode: test 67 * 68 * @var stubMode 69 */ 70 public static $TEST; 71 /** 72 * mode: stage 73 * 74 * @var stubMode 75 */ 76 public static $STAGE; 77 /** 78 * mode: development 79 * 80 * @var stubMode 81 */ 82 public static $DEV; 83 /** 84 * current selected mode, default: PROD 85 * 86 * @var stubMode 55 * current selected mode 56 * 57 * This is for backwards compatibility only. 58 * 59 * @var stubMode 60 * @deprecated 87 61 */ 88 62 public static $CURRENT; 89 63 /** 64 * name of mode 65 * 66 * @var string 67 */ 68 protected $modeName; 69 /** 90 70 * exception handler to be used in the mode 91 71 * … … 107 87 108 88 /** 109 * static initializing110 */111 // @codeCoverageIgnoreStart112 public static function __static()113 {114 // production mode115 self::$PROD = new self('PROD', 0);116 self::$PROD->exceptionHandler = array('class' => 'net::stubbles::lang::errorhandler::stubProdModeExceptionHandler',117 'method' => 'handleException',118 'type' => self::HANDLER_INSTANCE119 );120 self::$PROD->errorHandler = array('class' => 'net::stubbles::lang::errorhandler::stubDefaultErrorHandler',121 'method' => 'handle',122 'type' => self::HANDLER_INSTANCE123 );124 125 // test mode126 self::$TEST = new self('TEST', 1);127 self::$TEST->exceptionHandler = array('class' => 'net::stubbles::lang::errorhandler::stubDisplayExceptionHandler',128 'method' => 'handleException',129 'type' => self::HANDLER_INSTANCE130 );131 self::$TEST->errorHandler = array('class' => 'net::stubbles::lang::errorhandler::stubDefaultErrorHandler',132 'method' => 'handle',133 'type' => self::HANDLER_INSTANCE134 );135 136 // stage mode137 self::$STAGE = new self('STAGE', 2);138 self::$STAGE->exceptionHandler = array('class' => 'net::stubbles::lang::errorhandler::stubDisplayExceptionHandler',139 'method' => 'handleException',140 'type' => self::HANDLER_INSTANCE141 );142 self::$STAGE->cacheEnabled = false;143 144 // development mode145 self::$DEV = new self('DEV', 3);146 self::$DEV->exceptionHandler = array('class' => 'net::stubbles::lang::errorhandler::stubDisplayExceptionHandler',147 'method' => 'handleException',148 'type' => self::HANDLER_INSTANCE149 );150 self::$DEV->cacheEnabled = false;151 152 // current mode, by default PROD153 self::$CURRENT = self::$PROD;154 }155 // @codeCoverageIgnoreEnd156 157 /**158 89 * sets the current mode 159 90 * 160 * @param stubMode $mode 91 * This is for backwards compatibility only. 92 * 93 * @param stubMode $mode 94 * @deprecated 161 95 */ 162 96 public static function setCurrent(self $mode) … … 166 100 167 101 /** 102 * constructor 103 * 104 * Use this to create your own mode. However you might want to use one of 105 * the four default modes delivered by this class, see below for the static 106 * constructor methods prod(), test(), stage() and dev(). 107 * 108 * @param string $modeName 109 * @param array<string,string> $exceptionHandler 110 * @param array<string,string> $errorHandler 111 * @param bool $cacheEnabled 112 */ 113 public function __construct($modeName, array $exceptionHandler, array $errorHandler, $cacheEnabled) 114 { 115 $this->modeName = $modeName; 116 $this->exceptionHandler = ((count($exceptionHandler) > 0) ? ($exceptionHandler) : (null)); 117 $this->errorHandler = ((count($errorHandler) > 0) ? ($errorHandler) : (null)); 118 $this->cacheEnabled = $cacheEnabled; 119 self::setCurrent($this); 120 } 121 122 /** 123 * creates default production mode 124 * 125 * - exceptions will be logged, error 500 will be shown instead of exception 126 * - default error handling for PHP errors 127 * - caching enabled 128 * 129 * @return stubMode 130 */ 131 public static function prod() 132 { 133 return new self('PROD', 134 array('class' => 'net::stubbles::lang::errorhandler::stubProdModeExceptionHandler', 135 'method' => 'handleException', 136 'type' => self::HANDLER_INSTANCE 137 ), 138 array('class' => 'net::stubbles::lang::errorhandler::stubDefaultErrorHandler', 139 'method' => 'handle', 140 'type' => self::HANDLER_INSTANCE 141 ), 142 true 143 ); 144 } 145 146 /** 147 * creates default test mode 148 * 149 * - exceptions will be displayed 150 * - default error handling for PHP errors 151 * - caching enabled 152 * 153 * @return stubMode 154 */ 155 public static function test() 156 { 157 return new self('TEST', 158 array('class' => 'net::stubbles::lang::errorhandler::stubDisplayExceptionHandler', 159 'method' => 'handleException', 160 'type' => self::HANDLER_INSTANCE 161 ), 162 array('class' => 'net::stubbles::lang::errorhandler::stubDefaultErrorHandler', 163 'method' => 'handle', 164 'type' => self::HANDLER_INSTANCE 165 ), 166 true 167 ); 168 } 169 170 /** 171 * creates default stage mode 172 * 173 * - exceptions will be displayed 174 * - no error handling for PHP errors 175 * - caching disabled 176 * 177 * @return stubMode 178 */ 179 public static function stage() 180 { 181 return new self('STAGE', 182 array('class' => 'net::stubbles::lang::errorhandler::stubDisplayExceptionHandler', 183 'method' => 'handleException', 184 'type' => self::HANDLER_INSTANCE 185 ), 186 array(), 187 false 188 ); 189 } 190 191 /** 192 * creates default dev mode 193 * 194 * - exceptions will be displayed 195 * - no error handling for PHP errors 196 * - caching disabled 197 * 198 * @return stubMode 199 */ 200 public static function dev() 201 { 202 return new self('DEV', 203 array('class' => 'net::stubbles::lang::errorhandler::stubDisplayExceptionHandler', 204 'method' => 'handleException', 205 'type' => self::HANDLER_INSTANCE 206 ), 207 array(), 208 false 209 ); 210 } 211 212 /** 213 * returns the name of the mode 214 * 215 * @return string 216 */ 217 public function name() 218 { 219 return $this->modeName; 220 } 221 222 /** 168 223 * sets the exception handler to given class and method name 169 224 * 170 225 * To register the new exception handler call registerExceptionHandler(). 171 226 * 172 * @param string|object $class name or instance of exception handler class 173 * @param string $methodName name of exception handler method 174 * @param string $type optional whether method has to be called statically or via an instance 227 * @param string|object $class name or instance of exception handler class 228 * @param string $methodName name of exception handler method 229 * @param string $type optional whether method has to be called statically or via an instance 230 * @return stubMode 175 231 */ 176 232 public function setExceptionHandler($class, $methodName, $type = self::HANDLER_INSTANCE) … … 180 236 'type' => $type 181 237 ); 238 return $this; 182 239 } 183 240 … … 211 268 * To register the new error handler call registerErrorHandler(). 212 269 * 213 * @param string|object $class name or instance of error handler class 214 * @param string $methodName name of error handler method 215 * @param string $type optional whether method has to be called statically or via an instance 270 * @param string|object $class name or instance of error handler class 271 * @param string $methodName name of error handler method 272 * @param string $type optional whether method has to be called statically or via an instance 273 * @return stubMode 216 274 */ 217 275 public function setErrorHandler($class, $methodName, $type = self::HANDLER_INSTANCE) … … 221 279 'type' => $type 222 280 ); 281 return $this; 223 282 } 224 283 -
framework/trunk/src/main/php/net/stubbles/websites/ioc/stubWebsiteBindingModule.php
r2081 r2082 166 166 if ($binder->getInjector()->hasExplicitBinding('stubMode') === false) { 167 167 if (null === $this->mode) { 168 $this->mode = stubMode:: $PROD;168 $this->mode = stubMode::prod(); 169 169 } 170 170 -
framework/trunk/src/test/php/net/stubbles/ioc/stubAppTestCase.php
r2081 r2082 172 172 ), 173 173 stubWebsiteBindingModule::createWithXmlProcessorAsDefault() 174 ->runningInMode(stubMode:: $DEV)174 ->runningInMode(stubMode::dev()) 175 175 ); 176 176 $this->assertType('stubFrontController', $frontController); -
framework/trunk/src/test/php/net/stubbles/lang/stubModeTestCase.php
r1763 r2082 3 3 * Tests for net::stubbles::lang::stubMode. 4 4 * 5 * @author Frank Kleine <mikey@stubbles.net>6 5 * @package stubbles 7 6 * @subpackage lang_test 7 * @version $Id$ 8 8 */ 9 9 stubClassLoader::load('net::stubbles::lang::stubMode', … … 11 11 ); 12 12 /** 13 * Mock class to be used as error handler.13 * Tests for net::stubbles::lang::stubMode. 14 14 * 15 * @package stubbles 16 * @subpackage lang_test 17 */ 18 class stubModestubErrorHandler extends stubBaseObject implements stubErrorHandler 19 { 20 /** 21 * checks whether this error handler is responsible for the given error 22 * 23 * @param int $level level of the raised error 24 * @param string $message error message 25 * @param string $file optional filename that the error was raised in 26 * @param int $line optional line number the error was raised at 27 * @param array $context optional array of every variable that existed in the scope the error was triggered in 28 * @return bool true if error handler is responsible, else false 29 */ 30 public function isResponsible($level, $message, $file = null, $line = null, array $context = array()) {} 31 32 /** 33 * checks whether this error is supressable 34 * 35 * This method is called in case the level is 0. It decides whether the 36 * error has to be handled or if it can be omitted. 37 * 38 * @param int $level level of the raised error 39 * @param string $message error message 40 * @param string $file optional filename that the error was raised in 41 * @param int $line optional line number the error was raised at 42 * @param array $context optional array of every variable that existed in the scope the error was triggered in 43 * @return bool true if error is supressable, else false 44 */ 45 public function isSupressable($level, $message, $file = null, $line = null, array $context = array()) {} 46 47 /** 48 * handles the given error 49 * 50 * @param int $level level of the raised error 51 * @param string $message error message 52 * @param string $file optional filename that the error was raised in 53 * @param int $line optional line number the error was raised at 54 * @param array $context optional array of every variable that existed in the scope the error was triggered in 55 * @return bool true if error message should populate $php_errormsg, else false 56 * @throws stubException error handlers are allowed to throw every exception they want to 57 */ 58 public function handle($level, $message, $file = null, $line = null, array $context = array()) {} 59 } 60 /** 61 * Concrete instance of net::stubbles::lang::stubMode. 62 * 63 * @package stubbles 64 * @subpackage lang_test 65 */ 66 class TeststubMode extends stubMode 67 { 68 /** 69 * we just need a test instance 70 * 71 * @var TeststubMode 72 */ 73 public static $FOO; 74 75 /** 76 * initialize the test instance 77 */ 78 public static function init() 79 { 80 self::$FOO = new self('FOO'); 81 } 82 83 /** 84 * returns the class name 85 * 86 * @return string 87 */ 88 public function getClassName() 89 { 90 return 'net::stubbles::lang::test::TeststubMode'; 91 } 92 93 /** 94 * returns the exception handler 95 * 96 * @return array 97 */ 98 public function getExceptionHandler() 99 { 100 return $this->exceptionHandler; 101 } 102 103 /** 104 * returns the error handler 105 * 106 * @return array 107 */ 108 public function getErrorHandler() 109 { 110 return $this->errorHandler; 111 } 112 113 /** 114 * helper method to access the protected getCallback() method 115 * 116 * @param array $handler 117 * @return callback 118 */ 119 public function retrieveCallback(array &$handler) 120 { 121 return $this->getCallback($handler); 122 } 123 } 124 TeststubMode::init(); 125 /** 126 * Tests for net::stubbles::lang::stubMode. 15 * All tests that do not require restoring the error or exception handler. 127 16 * 128 17 * @package stubbles … … 132 21 class stubModeTestCase extends PHPUnit_Framework_TestCase 133 22 { 134 /**135 * set up test environment136 */137 public function setUp()138 {139 stubMode::setCurrent(stubMode::$PROD);140 }141 142 /**143 * clean up test environment144 */145 public function tearDown()146 {147 stubMode::setCurrent(stubMode::$PROD);148 }149 23 150 24 /** … … 152 26 * 153 27 * @test 28 * @expectedException stubIllegalArgumentException 154 29 */ 155 public function getCallback WithStatic()30 public function getCallbackExceptionHandlerWithStaticButInstanceGiven() 156 31 { 157 $ handler = array('class' => 'stubModestubErrorHandler',158 'method' => 'handle',159 'type' => stubMode::HANDLER_STATIC160 );161 $this->assertEquals(array('stubModestubErrorHandler', 'handle'),162 TeststubMode::$FOO->retrieveCallback($handler)163 );32 $instance = new stdClass(); 33 $handler = array('class' => $instance, 34 'method' => 'handleException', 35 'type' => stubMode::HANDLER_STATIC 36 ); 37 $mode = new stubMode('FOO', $handler, array(), false); 38 $mode->registerExceptionHandler(); 164 39 } 165 40 … … 170 45 * @expectedException stubIllegalArgumentException 171 46 */ 172 public function getCallback WithStaticButInstanceGiven()47 public function getCallbackErrorHandlerWithStaticButInstanceGiven() 173 48 { 174 $instance = new st ubModestubErrorHandler();49 $instance = new stdClass(); 175 50 $handler = array('class' => $instance, 176 51 'method' => 'handle', 177 52 'type' => stubMode::HANDLER_STATIC 178 53 ); 179 TeststubMode::$FOO->retrieveCallback($handler); 54 $mode = new stubMode('FOO', array(), $handler, false); 55 $mode->registerErrorHandler(); 180 56 } 181 57 … … 185 61 * @test 186 62 */ 187 public function getCallbackWithInstanceFromClassname()63 public function noErrorHandler() 188 64 { 189 $handler = array('class' => 'stubModestubErrorHandler', 190 'method' => 'handle', 191 'type' => stubMode::HANDLER_INSTANCE 192 ); 193 $callback = TeststubMode::$FOO->retrieveCallback($handler); 194 $this->assertType('stubModestubErrorHandler', $callback[0]); 195 $this->assertEquals('handle', $callback[1]); 65 $mode = new stubMode('FOO', array(), array(), false); 66 $this->assertFalse($mode->registerErrorHandler()); 196 67 } 197 68 … … 201 72 * @test 202 73 */ 203 public function getCallbackWithInstanceFromInstance()74 public function noExceptionHandler() 204 75 { 205 $instance = new stubModestubErrorHandler(); 206 $handler = array('class' => $instance, 207 'method' => 'handle', 208 'type' => stubMode::HANDLER_INSTANCE 209 ); 210 $callback = TeststubMode::$FOO->retrieveCallback($handler); 211 $this->assertSame($instance, $callback[0]); 212 $this->assertEquals('handle', $callback[1]); 76 $mode = new stubMode('FOO', array(), array(), false); 77 $this->assertFalse($mode->registerExceptionHandler()); 213 78 } 214 79 … … 220 85 public function cacheEnabled() 221 86 { 222 $this->assertTrue(stubMode:: $PROD->isCacheEnabled());223 $this->assertTrue(stubMode:: $TEST->isCacheEnabled());224 $this->assertFalse(stubMode:: $STAGE->isCacheEnabled());225 $this->assertFalse(stubMode:: $DEV->isCacheEnabled());87 $this->assertTrue(stubMode::prod()->isCacheEnabled()); 88 $this->assertTrue(stubMode::test()->isCacheEnabled()); 89 $this->assertFalse(stubMode::stage()->isCacheEnabled()); 90 $this->assertFalse(stubMode::dev()->isCacheEnabled()); 226 91 } 227 92 … … 233 98 public function noErrorHandlerForStageAndDevMode() 234 99 { 235 $this->assertFalse(stubMode:: $STAGE->registerErrorHandler());236 $this->assertFalse(stubMode:: $DEV->registerErrorHandler());100 $this->assertFalse(stubMode::stage()->registerErrorHandler()); 101 $this->assertFalse(stubMode::dev()->registerErrorHandler()); 237 102 } 238 103 239 104 /** 240 * test that the exception handler is set correct 241 * 242 * @test 243 */ 244 public function setExceptionHandler() 245 { 246 TeststubMode::$FOO->setExceptionHandler('class', 'method', stubMode::HANDLER_INSTANCE); 247 $this->assertEquals(array('class' => 'class', 248 'method' => 'method', 249 'type' => stubMode::HANDLER_INSTANCE 250 ), 251 TeststubMode::$FOO->getExceptionHandler() 252 ); 253 } 254 255 /** 256 * test that the error handler is set correct 257 * 258 * @test 259 */ 260 public function setErrorHandler() 261 { 262 TeststubMode::$FOO->setErrorHandler('class', 'method', stubMode::HANDLER_STATIC); 263 $this->assertEquals(array('class' => 'class', 264 'method' => 'method', 265 'type' => stubMode::HANDLER_STATIC 266 ), 267 TeststubMode::$FOO->getErrorHandler() 268 ); 269 } 270 271 /** 272 * test that current mode is a reference to the selected mode 105 * test that current mode is a reference to the created mode 273 106 * 274 107 * @test … … 276 109 public function current() 277 110 { 278 // PROD is the default current mode 279 $this->assertSame(stubMode::$PROD, stubMode::$CURRENT); 280 stubMode::setCurrent(stubMode::$DEV); 281 $this->assertSame(stubMode::$DEV, stubMode::$CURRENT); 111 $prodMode = stubMode::prod(); 112 $this->assertSame($prodMode, stubMode::$CURRENT); 282 113 } 283 114 } -
framework/trunk/src/test/php/net/stubbles/service/jsonrpc/subprocessors/stubJsonRpcAbstractGenerateSubProcessorTestCase.php
r1763 r2082 3 3 * Test for net::stubbles::service::jsonrpc::subprocessors::stubJsonRpcAbstractGenerateSubProcessor. 4 4 * 5 * @author Frank Kleine <mikey@stubbles.net>6 5 * @package stubbles 7 6 * @subpackage service_jsonrpc_subprocessors_test 7 * @version $Id$ 8 8 */ 9 9 stubClassLoader::load('net::stubbles::service::jsonrpc::subprocessors::stubJsonRpcAbstractGenerateSubProcessor'); … … 123 123 public function handleExceptionInProdMode() 124 124 { 125 stubMode::setCurrent(stubMode:: $PROD);125 stubMode::setCurrent(stubMode::prod()); 126 126 $exception = new Exception('exceptionMessage'); 127 127 $this->mockResponse->expects($this->never())->method('write'); … … 136 136 public function handleExceptionInOtherMode() 137 137 { 138 stubMode::setCurrent(stubMode:: $DEV);138 stubMode::setCurrent(stubMode::dev()); 139 139 $exception = new Exception('exceptionMessage'); 140 140 $this->mockResponse->expects($this->exactly(2))->method('write'); -
framework/trunk/src/test/php/net/stubbles/stubTestSuite.php
r2060 r2082 30 30 $suite->addTestFile($dir . '/lang/stubBaseObjectTestCase.php'); 31 31 $suite->addTestFile($dir . '/lang/stubEnumTestCase.php'); 32 $suite->addTestFile($dir . '/lang/stubModeErrorHandlerTestCase.php'); 33 $suite->addTestFile($dir . '/lang/stubModeExceptionHandlerTestCase.php'); 32 34 $suite->addTestFile($dir . '/lang/stubModeTestCase.php'); 33 35 $suite->addTestFile($dir . '/lang/stubPathRegistryTestCase.php'); -
framework/trunk/src/test/php/net/stubbles/websites/cache/stubGzipWebsiteCacheTestCase.php
r1944 r2082 3 3 * Tests for net::stubbles::websites::cache::stubGzipWebsiteCache. 4 4 * 5 * @author Frank Kleine <mikey@stubbles.net>6 5 * @package stubbles 7 6 * @subpackage websites_cache_test 7 * @version $Id$ 8 8 */ 9 9 stubClassLoader::load('net::stubbles::websites::cache::stubGzipWebsiteCache'); … … 200 200 public function store() 201 201 { 202 stubMode::setCurrent(stubMode::$PROD);203 202 $this->mockResponse->expects($this->any())->method('getData')->will($this->returnValue('fooContent$SIDbla$SESSION_NAMEblub$SESSION_ID')); 204 203 $this->mockWebsiteCache->expects($this->once()) -
framework/trunk/src/test/php/net/stubbles/websites/ioc/stubWebsiteBindingModuleTestCase.php
r2081 r2082 52 52 ->enableJsonRpc() 53 53 ->enableRss() 54 ->runningInMode(stubMode:: $DEV)54 ->runningInMode(stubMode::dev()) 55 55 ->configure($this->binder); 56 56 … … 87 87 ->enableJsonRpc('interceptors-bar') 88 88 ->enableRss('interceptors-baz') 89 ->runningInMode(stubMode:: $DEV)89 ->runningInMode(stubMode::dev()) 90 90 ->configure($this->binder); 91 91 … … 122 122 ->enableJsonRpc() 123 123 ->enableRss() 124 ->runningInMode(stubMode:: $DEV)124 ->runningInMode(stubMode::dev()) 125 125 ->configure($this->binder); 126 126 … … 157 157 ->enableJsonRpc('interceptors-bar') 158 158 ->enableRss('interceptors-baz') 159 ->runningInMode(stubMode:: $DEV)159 ->runningInMode(stubMode::dev()) 160 160 ->configure($this->binder); 161 161 … … 189 189 public function createUserDefined() 190 190 { 191 $this->websiteBindingModule->runningInMode(stubMode:: $DEV)191 $this->websiteBindingModule->runningInMode(stubMode::dev()) 192 192 ->configure($this->binder); 193 193 $processorResolver = $this->binder->getInjector()->getInstance('stubProcessorResolver'); … … 211 211 { 212 212 stubWebsiteBindingModule::create('foo', 'org::stubbles::test::FooProcessor', 'interceptors-foo', 'org::stubbles::test::FooPageFactory') 213 ->runningInMode(stubMode:: $DEV)213 ->runningInMode(stubMode::dev()) 214 214 ->configure($this->binder); 215 215 $processorResolver = $this->binder->getInjector()->getInstance('stubProcessorResolver'); … … 239 239 $this->assertTrue($this->binder->getInjector()->hasBinding('stubInterceptorInitializer')); 240 240 $this->assertTrue($this->binder->getInjector()->hasBinding('stubWebsiteCacheFactory')); 241 $this->assert Same(stubMode::$PROD, $this->binder->getInjector()->getInstance('stubMode'));241 $this->assertEquals(stubMode::prod(), $this->binder->getInjector()->getInstance('stubMode')); 242 242 $this->assertType('stubInterceptorXJConfInitializer', $this->binder->getInjector()->getInstance('stubInterceptorInitializer')); 243 243 $this->assertType('stubDefaultWebsiteCacheFactory', $this->binder->getInjector()->getInstance('stubWebsiteCacheFactory')); … … 252 252 { 253 253 $this->binder->bind('stubCacheContainer')->toInstance($this->getMock('stubCacheContainer')); 254 $this->assertEquals($this->websiteBindingModule, $this->websiteBindingModule->runningInMode(stubMode::$DEV)); 254 $devMode = stubMode::dev(); 255 $this->assertEquals($this->websiteBindingModule, $this->websiteBindingModule->runningInMode($devMode)); 255 256 $this->websiteBindingModule->configure($this->binder); 256 257 $this->assertTrue($this->binder->getInjector()->hasBinding('stubMode')); 257 258 $this->assertTrue($this->binder->getInjector()->hasBinding('stubInterceptorInitializer')); 258 259 $this->assertFalse($this->binder->getInjector()->hasBinding('stubWebsiteCacheFactory')); 259 $this->assertSame( stubMode::$DEV, $this->binder->getInjector()->getInstance('stubMode'));260 $this->assertSame($devMode, $this->binder->getInjector()->getInstance('stubMode')); 260 261 $this->assertType('stubInterceptorXJConfInitializer', $this->binder->getInjector()->getInstance('stubInterceptorInitializer')); 261 $this->assertSame(stubMode::$DEV, stubMode::$CURRENT);262 262 } 263 263 … … 270 270 { 271 271 $this->binder->bind('stubCacheContainer')->toInstance($this->getMock('stubCacheContainer')); 272 $this->binder->bind('stubMode')->toInstance(stubMode::$STAGE); 272 $stageMode = stubMode::stage(); 273 $this->binder->bind('stubMode')->toInstance($stageMode); 273 274 $this->websiteBindingModule->configure($this->binder); 274 275 $this->assertTrue($this->binder->getInjector()->hasBinding('stubMode')); 275 276 $this->assertTrue($this->binder->getInjector()->hasBinding('stubInterceptorInitializer')); 276 277 $this->assertFalse($this->binder->getInjector()->hasBinding('stubWebsiteCacheFactory')); 277 $this->assertSame( stubMode::$STAGE, $this->binder->getInjector()->getInstance('stubMode'));278 $this->assertSame($stageMode, $this->binder->getInjector()->getInstance('stubMode')); 278 279 $this->assertType('stubInterceptorXJConfInitializer', $this->binder->getInjector()->getInstance('stubInterceptorInitializer')); 279 280 } … … 293 294 $this->assertTrue($this->binder->getInjector()->hasBinding('stubInterceptorInitializer')); 294 295 $this->assertTrue($this->binder->getInjector()->hasBinding('stubWebsiteCacheFactory')); 295 $this->assert Same(stubMode::$PROD, $this->binder->getInjector()->getInstance('stubMode'));296 $this->assertEquals(stubMode::prod(), $this->binder->getInjector()->getInstance('stubMode')); 296 297 $this->assertSame($mockInterceptorInitializer, $this->binder->getInjector()->getInstance('stubInterceptorInitializer')); 297 298 $this->assertType('stubDefaultWebsiteCacheFactory', $this->binder->getInjector()->getInstance('stubWebsiteCacheFactory')); -
framework/trunk/src/test/php/net/stubbles/websites/stubFrontControllerTestCase.php
r2081 r2082 273 273 public function modeHandlingRegistersErrorAndExceptionHandler() 274 274 { 275 $mockErrorHandler = $this->getMock('stubErrorHandler'); 276 $mockExceptionHandler = $this->getMock('stubExceptionHandler'); 277 stubMode::$TEST->setErrorHandler($mockErrorHandler, 'handle', stubMode::HANDLER_INSTANCE); 278 stubMode::$TEST->setExceptionHandler($mockExceptionHandler, 'handleException', stubMode::HANDLER_INSTANCE); 279 $this->assertSame($this->frontController, $this->frontController->setMode(stubMode::$TEST)); 280 $mockErrorHandler->expects($this->once()) 281 ->method('handle') 282 ->will($this->returnValue(true)); 283 trigger_error('message', E_USER_NOTICE); 284 // can not test exception handler, would require an uncatched exception 285 restore_error_handler(); 286 restore_exception_handler(); 275 $mockMode = $this->getMock('stubMode', array(), array('FOO', array(), array(), false)); 276 $mockMode->expects($this->once()) 277 ->method('registerErrorHandler'); 278 $mockMode->expects($this->once()) 279 ->method('registerExceptionHandler'); 280 $this->assertSame($this->frontController, $this->frontController->setMode($mockMode)); 287 281 } 288 282 } -
framework/trunk/src/test/php/net/stubbles/websites/xml/generator/stubModeXMLGeneratorTestCase.php
r1944 r2082 3 3 * Tests for net::stubbles::websites::xml::generator::stubModeXMLGenerator. 4 4 * 5 * @author Frank Kleine <mikey@stubbles.net>6 5 * @package stubbles 7 6 * @subpackage websites_xml_generator_test … … 68 67 public function prodMode() 69 68 { 70 stubMode::setCurrent(stubMode:: $PROD);69 stubMode::setCurrent(stubMode::prod()); 71 70 $this->assertTrue($this->modeXMLGenerator->isCachable()); 72 71 $this->modeXMLGenerator->generate($this->xmlStreamWriter, $this->mockXMLSerializer); … … 86 85 public function devMode() 87 86 { 88 stubMode::setCurrent(stubMode:: $DEV);87 stubMode::setCurrent(stubMode::dev()); 89 88 $this->assertFalse($this->modeXMLGenerator->isCachable()); 90 89 $this->modeXMLGenerator->generate($this->xmlStreamWriter, $this->mockXMLSerializer); -
framework/trunk/src/test/php/net/stubbles/websites/xml/skin/stubSkinGeneratorProviderTestCase.php
r2060 r2082 73 73 public function prodModeDeliversCachingSkinGenerator() 74 74 { 75 $skinGeneratorProvider = new stubSkinGeneratorProvider(stubMode:: $PROD, $this->injector);75 $skinGeneratorProvider = new stubSkinGeneratorProvider(stubMode::prod(), $this->injector); 76 76 $this->assertSame($this->mockCachingSkinGenerator, $skinGeneratorProvider->get()); 77 77 } … … 84 84 public function testModeDeliversCachingSkinGenerator() 85 85 { 86 $skinGeneratorProvider = new stubSkinGeneratorProvider(stubMode:: $TEST, $this->injector);86 $skinGeneratorProvider = new stubSkinGeneratorProvider(stubMode::test(), $this->injector); 87 87 $this->assertSame($this->mockCachingSkinGenerator, $skinGeneratorProvider->get()); 88 88 } … … 95 95 public function stageModeDeliversDefaultSkinGenerator() 96 96 { 97 $skinGeneratorProvider = new stubSkinGeneratorProvider(stubMode:: $STAGE, $this->injector);97 $skinGeneratorProvider = new stubSkinGeneratorProvider(stubMode::stage(), $this->injector); 98 98 $this->assertSame($this->mockDefaultSkinGenerator, $skinGeneratorProvider->get()); 99 99 } … … 106 106 public function devModeDeliversDefaultSkinGenerator() 107 107 { 108 $skinGeneratorProvider = new stubSkinGeneratorProvider(stubMode:: $DEV, $this->injector);108 $skinGeneratorProvider = new stubSkinGeneratorProvider(stubMode::dev(), $this->injector); 109 109 $this->assertSame($this->mockDefaultSkinGenerator, $skinGeneratorProvider->get()); 110 110 }
