106 lines
3.0 KiB
PHP
Executable File
106 lines
3.0 KiB
PHP
Executable File
<?php
|
|
/**
|
|
* CakePHP : Rapid Development Framework (http://cakephp.org)
|
|
* Copyright (c) Cake Software Foundation, Inc. (http://cakefoundation.org)
|
|
*
|
|
* Licensed under The MIT License
|
|
* For full copyright and license information, please see the LICENSE.txt
|
|
* Redistributions of files must retain the above copyright notice.
|
|
*
|
|
* @copyright Copyright (c) Cake Software Foundation, Inc. (http://cakefoundation.org)
|
|
* @link http://cakephp.org CakePHP Project
|
|
* @package Cake.Test.Case.TestSuite
|
|
* @since CakePHP v 1.2.0.4487
|
|
* @license http://www.opensource.org/licenses/mit-license.php MIT License
|
|
*/
|
|
|
|
/**
|
|
* CakeTestSuiteTest
|
|
*
|
|
* @package Cake.Test.Case.TestSuite
|
|
*/
|
|
class CakeTestSuiteTest extends CakeTestCase {
|
|
|
|
/**
|
|
* testAddTestDirectory
|
|
*
|
|
* @return void
|
|
*/
|
|
public function testAddTestDirectory() {
|
|
$testFolder = CORE_TEST_CASES . DS . 'TestSuite';
|
|
$count = count(glob($testFolder . DS . '*Test.php'));
|
|
|
|
$suite = $this->getMock('CakeTestSuite', array('addTestFile'));
|
|
$suite
|
|
->expects($this->exactly($count))
|
|
->method('addTestFile');
|
|
|
|
$suite->addTestDirectory($testFolder);
|
|
}
|
|
|
|
/**
|
|
* testAddTestDirectoryRecursive
|
|
*
|
|
* @return void
|
|
*/
|
|
public function testAddTestDirectoryRecursive() {
|
|
$testFolder = CORE_TEST_CASES . DS . 'Cache';
|
|
$count = count(glob($testFolder . DS . '*Test.php'));
|
|
$count += count(glob($testFolder . DS . 'Engine' . DS . '*Test.php'));
|
|
|
|
$suite = $this->getMock('CakeTestSuite', array('addTestFile'));
|
|
$suite
|
|
->expects($this->exactly($count))
|
|
->method('addTestFile');
|
|
|
|
$suite->addTestDirectoryRecursive($testFolder);
|
|
}
|
|
|
|
/**
|
|
* testAddTestDirectoryRecursiveWithHidden
|
|
*
|
|
* @return void
|
|
*/
|
|
public function testAddTestDirectoryRecursiveWithHidden() {
|
|
$this->skipIf(!is_writable(TMP), 'Cant addTestDirectoryRecursiveWithHidden unless the tmp folder is writable.');
|
|
|
|
$Folder = new Folder(TMP . 'MyTestFolder', true, 0777);
|
|
mkdir($Folder->path . DS . '.svn', 0777, true);
|
|
touch($Folder->path . DS . '.svn' . DS . 'InHiddenFolderTest.php');
|
|
touch($Folder->path . DS . 'NotHiddenTest.php');
|
|
touch($Folder->path . DS . '.HiddenTest.php');
|
|
|
|
$suite = $this->getMock('CakeTestSuite', array('addTestFile'));
|
|
$suite
|
|
->expects($this->exactly(1))
|
|
->method('addTestFile');
|
|
|
|
$suite->addTestDirectoryRecursive($Folder->pwd());
|
|
|
|
$Folder->delete();
|
|
}
|
|
|
|
/**
|
|
* testAddTestDirectoryRecursiveWithNonPhp
|
|
*
|
|
* @return void
|
|
*/
|
|
public function testAddTestDirectoryRecursiveWithNonPhp() {
|
|
$this->skipIf(!is_writable(TMP), 'Cant addTestDirectoryRecursiveWithNonPhp unless the tmp folder is writable.');
|
|
|
|
$Folder = new Folder(TMP . 'MyTestFolder', true, 0777);
|
|
touch($Folder->path . DS . 'BackupTest.php~');
|
|
touch($Folder->path . DS . 'SomeNotesTest.txt');
|
|
touch($Folder->path . DS . 'NotHiddenTest.php');
|
|
|
|
$suite = $this->getMock('CakeTestSuite', array('addTestFile'));
|
|
$suite
|
|
->expects($this->exactly(1))
|
|
->method('addTestFile');
|
|
|
|
$suite->addTestDirectoryRecursive($Folder->pwd());
|
|
|
|
$Folder->delete();
|
|
}
|
|
}
|