Overview

Packages

  • alpha::controller
  • alpha::controller::front
  • alpha::exceptions
  • alpha::model
  • alpha::model::types
  • alpha::tasks
  • alpha::tests
  • alpha::util
  • alpha::util::cache
  • alpha::util::codehighlight
  • alpha::util::convertors
  • alpha::util::feeds
  • alpha::util::filters
  • alpha::util::graphs
  • alpha::util::helpers
  • alpha::util::metrics
  • alpha::view
  • alpha::view::renderers
  • alpha::view::widgets

Classes

  • AlphaAgentUtils_Test
  • AlphaConfig_Test
  • AlphaController_Test
  • AlphaDAO_Test
  • AlphaDAOProviderFactory_Test
  • AlphaFeed_Test
  • AlphaFilters_Test
  • AlphaPHPServerUtils_Test
  • AlphaValidator_Test
  • AlphaView_Test
  • Boolean_Test
  • Date_Test
  • DEnum_Test
  • Double_Test
  • Enum_Test
  • Exceptions_Test
  • FrontController_Test
  • Image_Test
  • Integer_Test
  • Relation_Test
  • RelationLookup_Test
  • Sequence_Test
  • String_Test
  • Tag_Test
  • Text_Test
  • Timestamp_Test
  • Overview
  • Package
  • Class
  • Tree
  • Deprecated
 1: <?php
 2: 
 3: /**
 4:  *
 5:  * Test case for the exception handling functionality
 6:  * 
 7:  * @package alpha::tests
 8:  * @since 1.0
 9:  * @author John Collins <dev@alphaframework.org>
10:  * @version $Id: Exceptions_Test.php 1496 2012-02-12 20:32:21Z alphadev $
11:  * @license http://www.opensource.org/licenses/bsd-license.php The BSD License
12:  * @copyright Copyright (c) 2012, John Collins (founder of Alpha Framework).  
13:  * All rights reserved.
14:  * 
15:  * <pre>
16:  * Redistribution and use in source and binary forms, with or 
17:  * without modification, are permitted provided that the 
18:  * following conditions are met:
19:  * 
20:  * * Redistributions of source code must retain the above 
21:  *   copyright notice, this list of conditions and the 
22:  *   following disclaimer.
23:  * * Redistributions in binary form must reproduce the above 
24:  *   copyright notice, this list of conditions and the 
25:  *   following disclaimer in the documentation and/or other 
26:  *   materials provided with the distribution.
27:  * * Neither the name of the Alpha Framework nor the names 
28:  *   of its contributors may be used to endorse or promote 
29:  *   products derived from this software without specific 
30:  *   prior written permission.
31:  *   
32:  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND 
33:  * CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, 
34:  * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF 
35:  * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE 
36:  * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR 
37:  * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 
38:  * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT 
39:  * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; 
40:  * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 
41:  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 
42:  * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE 
43:  * OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS 
44:  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
45:  * </pre>
46:  *  
47:  */
48: class Exceptions_Test extends PHPUnit_Framework_TestCase {    
49:     /**
50:      * Testing that a division by 0 exception is caught by the general exception handler
51:      * 
52:      * @since 1.0
53:      */
54:     public function testDivideByZeroCaught() {
55:         $exceptionCaught = false;
56:         try {
57:             2/0;
58:         }catch (PHPException $e) {
59:             $exceptionCaught = true;
60:         }
61:         
62:         $this->assertTrue($exceptionCaught, "Testing that a division by 0 exception is caught by the general exception handler");
63:     }
64:     
65:     /**
66:      * Testing that calling a property on a non-object will throw an exception
67:      * 
68:      * @since 1.0
69:      */
70:     public function testPropertyNonObjectCaught() {
71:         $exceptionCaught = false;
72:         try {
73:             $e = $empty->test;
74:         }catch (PHPException $e) {
75:             $exceptionCaught = true;
76:         }
77:         
78:         $this->assertTrue($exceptionCaught, "Testing that calling a property on a non-object will throw an exception");
79:     }
80: }
81: 
82: ?>
Alpha Framework ${alpha.version.new} API Documentation API documentation generated by ApiGen 2.8.0