Subversion Repositories SmartDukaan

Rev

Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
12345 anikendra 1
<?php
2
/**
3
 * CakePHP : Rapid Development Framework (http://cakephp.org)
4
 * Copyright (c) Cake Software Foundation, Inc. (http://cakefoundation.org)
5
 *
6
 * Licensed under The MIT License
7
 * For full copyright and license information, please see the LICENSE.txt
8
 * Redistributions of files must retain the above copyright notice.
9
 *
10
 * @copyright     Copyright (c) Cake Software Foundation, Inc. (http://cakefoundation.org)
11
 * @link          http://cakephp.org CakePHP Project
12
 * @package       Cake.Test.Case.TestSuite
13
 * @since         CakePHP v 1.2.0.4487
14
 * @license       http://www.opensource.org/licenses/mit-license.php MIT License
15
 */
16
 
17
/**
18
 * CakeTestSuiteTest
19
 *
20
 * @package       Cake.Test.Case.TestSuite
21
 */
22
class CakeTestSuiteTest extends CakeTestCase {
23
 
24
/**
25
 * testAddTestDirectory
26
 *
27
 * @return void
28
 */
29
	public function testAddTestDirectory() {
30
		$testFolder = CORE_TEST_CASES . DS . 'TestSuite';
31
		$count = count(glob($testFolder . DS . '*Test.php'));
32
 
33
		$suite = $this->getMock('CakeTestSuite', array('addTestFile'));
34
		$suite
35
			->expects($this->exactly($count))
36
			->method('addTestFile');
37
 
38
		$suite->addTestDirectory($testFolder);
39
	}
40
 
41
/**
42
 * testAddTestDirectoryRecursive
43
 *
44
 * @return void
45
 */
46
	public function testAddTestDirectoryRecursive() {
47
		$testFolder = CORE_TEST_CASES . DS . 'Cache';
48
		$count = count(glob($testFolder . DS . '*Test.php'));
49
		$count += count(glob($testFolder . DS . 'Engine' . DS . '*Test.php'));
50
 
51
		$suite = $this->getMock('CakeTestSuite', array('addTestFile'));
52
		$suite
53
			->expects($this->exactly($count))
54
			->method('addTestFile');
55
 
56
		$suite->addTestDirectoryRecursive($testFolder);
57
	}
58
 
59
/**
60
 * testAddTestDirectoryRecursiveWithHidden
61
 *
62
 * @return void
63
 */
64
	public function testAddTestDirectoryRecursiveWithHidden() {
65
		$this->skipIf(!is_writable(TMP), 'Cant addTestDirectoryRecursiveWithHidden unless the tmp folder is writable.');
66
 
67
		$Folder = new Folder(TMP . 'MyTestFolder', true, 0777);
68
		mkdir($Folder->path . DS . '.svn', 0777, true);
69
		touch($Folder->path . DS . '.svn' . DS . 'InHiddenFolderTest.php');
70
		touch($Folder->path . DS . 'NotHiddenTest.php');
71
		touch($Folder->path . DS . '.HiddenTest.php');
72
 
73
		$suite = $this->getMock('CakeTestSuite', array('addTestFile'));
74
		$suite
75
			->expects($this->exactly(1))
76
			->method('addTestFile');
77
 
78
		$suite->addTestDirectoryRecursive($Folder->pwd());
79
 
80
		$Folder->delete();
81
	}
82
 
83
/**
84
 * testAddTestDirectoryRecursiveWithNonPhp
85
 *
86
 * @return void
87
 */
88
	public function testAddTestDirectoryRecursiveWithNonPhp() {
89
		$this->skipIf(!is_writable(TMP), 'Cant addTestDirectoryRecursiveWithNonPhp unless the tmp folder is writable.');
90
 
91
		$Folder = new Folder(TMP . 'MyTestFolder', true, 0777);
92
		touch($Folder->path . DS . 'BackupTest.php~');
93
		touch($Folder->path . DS . 'SomeNotesTest.txt');
94
		touch($Folder->path . DS . 'NotHiddenTest.php');
95
 
96
		$suite = $this->getMock('CakeTestSuite', array('addTestFile'));
97
		$suite
98
			->expects($this->exactly(1))
99
			->method('addTestFile');
100
 
101
		$suite->addTestDirectoryRecursive($Folder->pwd());
102
 
103
		$Folder->delete();
104
	}
105
}