Changeset 534 for trunk/app/webroot

Show
Ignore:
Timestamp:
05/20/08 15:27:39 (7 months ago)
Author:
aarkerio
Message:

New test

Files:
1 modified

Legend:

Unmodified
Added
Removed
  • trunk/app/webroot/test.php

    r236 r534  
    11<?php 
    2 /* SVN FILE: $Id: test.php 6311 2008-01-02 06:33:52Z phpnut $ */ 
     2/* SVN FILE: $Id: test.php 6527 2008-03-09 04:07:56Z gwoo $ */ 
    33/** 
    44 * Short description for file. 
     
    2222 * @subpackage      cake.cake.tests.libs 
    2323 * @since           CakePHP(tm) v 1.2.0.4433 
    24  * @version         $Revision: 6311 $ 
    25  * @modifiedby      $LastChangedBy: phpnut $ 
    26  * @lastmodified    $Date: 2008-01-02 00:33:52 -0600 (Wed, 02 Jan 2008) $ 
     24 * @version         $Revision: 6527 $ 
     25 * @modifiedby      $LastChangedBy: gwoo $ 
     26 * @lastmodified    $Date: 2008-03-08 22:07:56 -0600 (Sat, 08 Mar 2008) $ 
    2727 * @license         http://www.opensource.org/licenses/opengroup.php The Open Group Test Suite License 
    2828 */ 
     
    7070    define('TEST_CAKE_CORE_INCLUDE_PATH', CAKE_CORE_INCLUDE_PATH); 
    7171} 
    72 require_once CAKE . 'tests' . DS . 'lib' . DS . 'test_manager.php'; 
     72require_once CAKE_TESTS_LIB . 'test_manager.php'; 
    7373 
    7474if (Configure::read('debug') < 1) { 
     
    8282    $_GET['output'] = 'html'; 
    8383} 
    84  
    85 $dispatch =& new Dispatcher(); 
    86 $dispatch->baseUrl(); 
    87 define('BASE', $dispatch->webroot); 
    88  
    8984/** 
    9085 * 
    9186 * Used to determine output to display 
    9287 */ 
    93 define('CAKE_TEST_OUTPUT_HTML',1); 
    94 define('CAKE_TEST_OUTPUT_TEXT',2); 
     88define('CAKE_TEST_OUTPUT_HTML', 1); 
     89define('CAKE_TEST_OUTPUT_TEXT', 2); 
    9590 
    9691if (isset($_GET['output']) && $_GET['output'] == 'html') { 
    9792    define('CAKE_TEST_OUTPUT', CAKE_TEST_OUTPUT_HTML); 
    9893} else { 
     94    Debugger::output('txt'); 
    9995    define('CAKE_TEST_OUTPUT', CAKE_TEST_OUTPUT_TEXT); 
    10096} 
    10197 
    102 if (!vendor('simpletest' . DS . 'reporter')) { 
     98if (!App::import('Vendor', 'simpletest' . DS . 'reporter')) { 
    10399    CakePHPTestHeader(); 
    104     include CAKE . 'tests' . DS . 'lib' . DS . 'simpletest.php'; 
     100    include CAKE_TESTS_LIB . 'simpletest.php'; 
    105101    CakePHPTestSuiteFooter(); 
    106102    exit(); 
    107103} 
    108104 
    109     function &CakeTestsGetReporter() { 
    110         static $Reporter = NULL; 
    111         if (!$Reporter) { 
    112             switch (CAKE_TEST_OUTPUT) { 
    113                 case CAKE_TEST_OUTPUT_HTML: 
    114                     require_once LIB_TESTS . 'cake_reporter.php'; 
    115                     $Reporter = new CakeHtmlReporter(); 
    116                 break; 
    117                 default: 
    118                     $Reporter = new TextReporter(); 
    119                 break; 
    120             } 
    121         } 
    122         return $Reporter; 
     105CakePHPTestHeader(); 
     106CakePHPTestSuiteHeader(); 
     107define('RUN_TEST_LINK', $_SERVER['PHP_SELF']); 
     108 
     109if (isset($_GET['group'])) { 
     110    if ('all' == $_GET['group']) { 
     111        TestManager::runAllTests(CakeTestsGetReporter()); 
     112    } else { 
     113        TestManager::runGroupTest(ucfirst($_GET['group']), CakeTestsGetReporter()); 
    123114    } 
    124  
    125     function CakePHPTestRunMore() { 
    126         switch (CAKE_TEST_OUTPUT) { 
    127             case CAKE_TEST_OUTPUT_HTML: 
    128                 if (isset($_GET['group'])) { 
    129                     if (isset($_GET['app'])) { 
    130                         $show = '?show=groups&amp;app=true'; 
    131                     } else { 
    132                         $show = '?show=groups'; 
    133                     } 
    134                 } 
    135                 if (isset($_GET['case'])) { 
    136                     if (isset($_GET['app'])) { 
    137                         $show = '??show=cases&amp;app=truee'; 
    138                     } else { 
    139                         $show = '?show=cases'; 
    140                     } 
    141                 } 
    142                 echo "<p><a href='" . RUN_TEST_LINK . $show . "'>Run more tests</a></p>\n"; 
    143             break; 
    144         } 
    145     } 
    146  
    147     function CakePHPTestCaseList() { 
    148         switch (CAKE_TEST_OUTPUT) { 
    149             case CAKE_TEST_OUTPUT_HTML: 
    150                 if (isset($_GET['app'])) { 
    151                     echo HtmlTestManager::getTestCaseList(APP_TEST_CASES); 
    152                 } else { 
    153                     echo HtmlTestManager::getTestCaseList(CORE_TEST_CASES); 
    154                 } 
    155             break; 
    156             case CAKE_TEST_OUTPUT_TEXT: 
    157             default: 
    158                 if (isset($_GET['app'])) { 
    159                     echo TextTestManager::getTestCaseList(APP_TEST_CASES); 
    160                 } else { 
    161                     echo TextTestManager::getTestCaseList(CORE_TEST_CASES); 
    162                 } 
    163             break; 
    164         } 
    165     } 
    166  
    167     function CakePHPTestGroupTestList() { 
    168         switch (CAKE_TEST_OUTPUT) { 
    169             case CAKE_TEST_OUTPUT_HTML: 
    170                 if (isset($_GET['app'])) { 
    171                     echo HtmlTestManager::getGroupTestList(APP_TEST_GROUPS); 
    172                 } else { 
    173                     echo HtmlTestManager::getGroupTestList(CORE_TEST_GROUPS); 
    174                 } 
    175             break; 
    176             case CAKE_TEST_OUTPUT_TEXT: 
    177             default: 
    178                 if (isset($_GET['app'])) { 
    179                     echo TextTestManager::getGroupTestList(APP_TEST_GROUPS); 
    180                 } else { 
    181                     echo TextTestManager::getGroupTestList(CORE_TEST_GROUPS); 
    182                 } 
    183                 break; 
    184         } 
    185     } 
    186  
    187     function CakePHPTestHeader() { 
    188         switch (CAKE_TEST_OUTPUT) { 
    189             case CAKE_TEST_OUTPUT_HTML: 
    190                 $baseUrl = BASE; 
    191                 $characterSet = 'charset=utf-8'; 
    192                 include CAKE . 'tests' . DS . 'lib' . DS . 'header.php'; 
    193             break; 
    194             case CAKE_TEST_OUTPUT_TEXT: 
    195             default: 
    196                 header(' content-type: text/plain'); 
    197             break; 
    198         } 
    199     } 
    200  
    201     function CakePHPTestSuiteHeader() { 
    202         switch (CAKE_TEST_OUTPUT) { 
    203             case CAKE_TEST_OUTPUT_HTML: 
    204                 $groups = $_SERVER['PHP_SELF'].'?show=groups'; 
    205                 $cases = $_SERVER['PHP_SELF'].'?show=cases'; 
    206                 include CAKE . 'tests' . DS . 'lib' . DS . 'content.php'; 
    207             break; 
    208         } 
    209     } 
    210  
    211     function CakePHPTestSuiteFooter() { 
    212         switch ( CAKE_TEST_OUTPUT) { 
    213             case CAKE_TEST_OUTPUT_HTML: 
    214                 $baseUrl = BASE; 
    215                 include CAKE . 'tests' . DS . 'lib' . DS . 'footer.php'; 
    216             break; 
    217         } 
    218     } 
    219  
    220     CakePHPTestHeader(); 
    221     CakePHPTestSuiteHeader(); 
    222     define('RUN_TEST_LINK', $_SERVER['PHP_SELF']); 
    223  
    224     if (isset($_GET['group'])) { 
    225         if ('all' == $_GET['group']) { 
    226             TestManager::runAllTests(CakeTestsGetReporter()); 
    227         } else { 
    228             if (isset($_GET['app'])) { 
    229                 TestManager::runGroupTest(ucfirst($_GET['group']), APP_TEST_GROUPS, CakeTestsGetReporter()); 
    230             } else { 
    231                 TestManager::runGroupTest(ucfirst($_GET['group']), CORE_TEST_GROUPS, CakeTestsGetReporter()); 
    232             } 
    233         } 
    234         CakePHPTestRunMore(); 
    235         CakePHPTestSuiteFooter(); 
    236         exit(); 
    237     } 
    238  
    239     if (isset($_GET['case'])) { 
    240         TestManager::runTestCase($_GET['case'], CakeTestsGetReporter()); 
    241         CakePHPTestRunMore(); 
    242         CakePHPTestSuiteFooter(); 
    243         exit(); 
    244     } 
    245  
    246     if (isset($_GET['show']) && $_GET['show'] == 'cases') { 
    247         CakePHPTestCaseList(); 
    248     } else { 
    249         CakePHPTestGroupTestList(); 
    250     } 
    251     CakePHPTestSuiteFooter(); 
     115    CakePHPTestRunMore(); 
     116} elseif (isset($_GET['case'])) { 
     117    TestManager::runTestCase($_GET['case'], CakeTestsGetReporter()); 
     118    CakePHPTestRunMore(); 
     119}elseif (isset($_GET['show']) && $_GET['show'] == 'cases') { 
     120    CakePHPTestCaseList(); 
     121} else { 
     122    CakePHPTestGroupTestList(); 
     123} 
     124CakePHPTestSuiteFooter(); 
    252125?>