mirror of
				https://github.com/brmlab/brmsklad.git
				synced 2025-10-31 08:13:58 +01:00 
			
		
		
		
	Upgrade CakePHP from 2.2.5 to 2.9.5
This commit is contained in:
		
							parent
							
								
									5a580df460
								
							
						
					
					
						commit
						235a541597
					
				
					 793 changed files with 60746 additions and 23753 deletions
				
			
		|  | @ -2,30 +2,40 @@ | |||
| /** | ||||
|  * ConsoleLogTest file | ||||
|  * | ||||
|  * PHP 5 | ||||
|  * | ||||
|  * CakePHP(tm) Tests <http://book.cakephp.org/2.0/en/development/testing.html> | ||||
|  * Copyright 2005-2012, Cake Software Foundation, Inc. (http://cakefoundation.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 2005-2012, Cake Software Foundation, Inc. (http://cakefoundation.org) | ||||
|  * @copyright     Copyright (c) Cake Software Foundation, Inc. (http://cakefoundation.org) | ||||
|  * @link          http://book.cakephp.org/2.0/en/development/testing.html CakePHP(tm) Tests | ||||
|  * @package       Cake.Test.Case.Log.Engine | ||||
|  * @since         CakePHP(tm) v 1.3 | ||||
|  * @license       MIT License (http://www.opensource.org/licenses/mit-license.php) | ||||
|  * @license       http://www.opensource.org/licenses/mit-license.php MIT License | ||||
|  */ | ||||
| 
 | ||||
| App::uses('ConsoleLog', 'Log/Engine'); | ||||
| 
 | ||||
| /** | ||||
|  * TestConsoleLog | ||||
|  * | ||||
|  * @package       Cake.Test.Case.Log.Engine | ||||
|  */ | ||||
| class TestConsoleLog extends ConsoleLog { | ||||
| 
 | ||||
| } | ||||
| 
 | ||||
| /** | ||||
|  * TestCakeLog | ||||
|  * | ||||
|  * @package       Cake.Test.Case.Log.Engine | ||||
|  */ | ||||
| class TestCakeLog extends CakeLog { | ||||
| 
 | ||||
| 	public static function replace($key, &$engine) { | ||||
| 		self::$_Collection->{$key} = $engine; | ||||
| 		static::$_Collection->{$key} = $engine; | ||||
| 	} | ||||
| 
 | ||||
| } | ||||
|  | @ -40,12 +50,12 @@ class ConsoleLogTest extends CakeTestCase { | |||
| 	public function setUp() { | ||||
| 		parent::setUp(); | ||||
| 		CakeLog::config('debug', array( | ||||
| 			'engine' => 'FileLog', | ||||
| 			'engine' => 'File', | ||||
| 			'types' => array('notice', 'info', 'debug'), | ||||
| 			'file' => 'debug', | ||||
| 		)); | ||||
| 		CakeLog::config('error', array( | ||||
| 			'engine' => 'FileLog', | ||||
| 			'engine' => 'File', | ||||
| 			'types' => array('error', 'warning'), | ||||
| 			'file' => 'error', | ||||
| 		)); | ||||
|  | @ -63,10 +73,12 @@ class ConsoleLogTest extends CakeTestCase { | |||
| 
 | ||||
| /** | ||||
|  * Test writing to ConsoleOutput | ||||
|  * | ||||
|  * @return void | ||||
|  */ | ||||
| 	public function testConsoleOutputWrites() { | ||||
| 		TestCakeLog::config('test_console_log', array( | ||||
| 			'engine' => 'TestConsoleLog', | ||||
| 			'engine' => 'TestConsole', | ||||
| 			)); | ||||
| 
 | ||||
| 		$mock = $this->getMock('TestConsoleLog', array('write'), array( | ||||
|  | @ -82,10 +94,12 @@ class ConsoleLogTest extends CakeTestCase { | |||
| 
 | ||||
| /** | ||||
|  * Test logging to both ConsoleLog and FileLog | ||||
|  * | ||||
|  * @return void | ||||
|  */ | ||||
| 	public function testCombinedLogWriting() { | ||||
| 		TestCakeLog::config('test_console_log', array( | ||||
| 			'engine' => 'TestConsoleLog', | ||||
| 			'engine' => 'TestConsole', | ||||
| 			)); | ||||
| 		$mock = $this->getMock('TestConsoleLog', array('write'), array( | ||||
| 			array('types' => 'error'), | ||||
|  | @ -118,12 +132,16 @@ class ConsoleLogTest extends CakeTestCase { | |||
| 
 | ||||
| /** | ||||
|  * test default value of stream 'outputAs' | ||||
|  * | ||||
|  * @return void | ||||
|  */ | ||||
| 	public function testDefaultOutputAs() { | ||||
| 		TestCakeLog::config('test_console_log', array( | ||||
| 			'engine' => 'TestConsoleLog', | ||||
| 			'engine' => 'TestConsole', | ||||
| 			)); | ||||
| 		if (DS == '\\' && !(bool)env('ANSICON')) { | ||||
| 		if ((DS === '\\' && !(bool)env('ANSICON') && env('ConEmuANSI') !== 'ON') || | ||||
| 			(function_exists('posix_isatty') && !posix_isatty(null)) | ||||
| 		) { | ||||
| 			$expected = ConsoleOutput::PLAIN; | ||||
| 		} else { | ||||
| 			$expected = ConsoleOutput::COLOR; | ||||
|  |  | |||
|  | @ -2,20 +2,20 @@ | |||
| /** | ||||
|  * FileLogTest file | ||||
|  * | ||||
|  * PHP 5 | ||||
|  * | ||||
|  * CakePHP(tm) Tests <http://book.cakephp.org/2.0/en/development/testing.html> | ||||
|  * Copyright 2005-2012, Cake Software Foundation, Inc. (http://cakefoundation.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 2005-2012, Cake Software Foundation, Inc. (http://cakefoundation.org) | ||||
|  * @copyright     Copyright (c) Cake Software Foundation, Inc. (http://cakefoundation.org) | ||||
|  * @link          http://book.cakephp.org/2.0/en/development/testing.html CakePHP(tm) Tests | ||||
|  * @package       Cake.Test.Case.Log.Engine | ||||
|  * @since         CakePHP(tm) v 1.3 | ||||
|  * @license       MIT License (http://www.opensource.org/licenses/mit-license.php) | ||||
|  * @license       http://www.opensource.org/licenses/mit-license.php MIT License | ||||
|  */ | ||||
| 
 | ||||
| App::uses('FileLog', 'Log/Engine'); | ||||
| 
 | ||||
| /** | ||||
|  | @ -31,36 +31,26 @@ class FileLogTest extends CakeTestCase { | |||
|  * @return void | ||||
|  */ | ||||
| 	public function testLogFileWriting() { | ||||
| 		if (file_exists(LOGS . 'error.log')) { | ||||
| 			unlink(LOGS . 'error.log'); | ||||
| 		} | ||||
| 		$this->_deleteLogs(LOGS); | ||||
| 
 | ||||
| 		$log = new FileLog(); | ||||
| 		$log->write('warning', 'Test warning'); | ||||
| 		$this->assertTrue(file_exists(LOGS . 'error.log')); | ||||
| 
 | ||||
| 		$result = file_get_contents(LOGS . 'error.log'); | ||||
| 		$this->assertRegExp('/^2[0-9]{3}-[0-9]+-[0-9]+ [0-9]+:[0-9]+:[0-9]+ Warning: Test warning/', $result); | ||||
| 		unlink(LOGS . 'error.log'); | ||||
| 
 | ||||
| 		if (file_exists(LOGS . 'debug.log')) { | ||||
| 			unlink(LOGS . 'debug.log'); | ||||
| 		} | ||||
| 		$log->write('debug', 'Test warning'); | ||||
| 		$this->assertTrue(file_exists(LOGS . 'debug.log')); | ||||
| 
 | ||||
| 		$result = file_get_contents(LOGS . 'debug.log'); | ||||
| 		$this->assertRegExp('/^2[0-9]{3}-[0-9]+-[0-9]+ [0-9]+:[0-9]+:[0-9]+ Debug: Test warning/', $result); | ||||
| 		unlink(LOGS . 'debug.log'); | ||||
| 
 | ||||
| 		if (file_exists(LOGS . 'random.log')) { | ||||
| 			unlink(LOGS . 'random.log'); | ||||
| 		} | ||||
| 		$log->write('random', 'Test warning'); | ||||
| 		$this->assertTrue(file_exists(LOGS . 'random.log')); | ||||
| 
 | ||||
| 		$result = file_get_contents(LOGS . 'random.log'); | ||||
| 		$this->assertRegExp('/^2[0-9]{3}-[0-9]+-[0-9]+ [0-9]+:[0-9]+:[0-9]+ Random: Test warning/', $result); | ||||
| 		unlink(LOGS . 'random.log'); | ||||
| 	} | ||||
| 
 | ||||
| /** | ||||
|  | @ -70,14 +60,135 @@ class FileLogTest extends CakeTestCase { | |||
|  */ | ||||
| 	public function testPathSetting() { | ||||
| 		$path = TMP . 'tests' . DS; | ||||
| 		if (file_exists(LOGS . 'error.log')) { | ||||
| 			unlink(LOGS . 'error.log'); | ||||
| 		} | ||||
| 		$this->_deleteLogs($path); | ||||
| 
 | ||||
| 		$log = new FileLog(compact('path')); | ||||
| 		$log->write('warning', 'Test warning'); | ||||
| 		$this->assertTrue(file_exists($path . 'error.log')); | ||||
| 	} | ||||
| 
 | ||||
| /** | ||||
|  * test log rotation | ||||
|  * | ||||
|  * @return void | ||||
|  */ | ||||
| 	public function testRotation() { | ||||
| 		$path = TMP . 'tests' . DS; | ||||
| 		$this->_deleteLogs($path); | ||||
| 
 | ||||
| 		file_put_contents($path . 'error.log', "this text is under 35 bytes\n"); | ||||
| 		$log = new FileLog(array( | ||||
| 			'path' => $path, | ||||
| 			'size' => 35, | ||||
| 			'rotate' => 2 | ||||
| 		)); | ||||
| 		$log->write('warning', 'Test warning one'); | ||||
| 		$this->assertTrue(file_exists($path . 'error.log')); | ||||
| 
 | ||||
| 		$result = file_get_contents($path . 'error.log'); | ||||
| 		$this->assertRegExp('/Warning: Test warning one/', $result); | ||||
| 		$this->assertEquals(0, count(glob($path . 'error.log.*'))); | ||||
| 
 | ||||
| 		clearstatcache(); | ||||
| 		$log->write('warning', 'Test warning second'); | ||||
| 
 | ||||
| 		$files = glob($path . 'error.log.*'); | ||||
| 		$this->assertEquals(1, count($files)); | ||||
| 
 | ||||
| 		$result = file_get_contents($files[0]); | ||||
| 		$this->assertRegExp('/this text is under 35 bytes/', $result); | ||||
| 		$this->assertRegExp('/Warning: Test warning one/', $result); | ||||
| 
 | ||||
| 		sleep(1); | ||||
| 		clearstatcache(); | ||||
| 		$log->write('warning', 'Test warning third'); | ||||
| 
 | ||||
| 		$result = file_get_contents($path . 'error.log'); | ||||
| 		$this->assertRegExp('/Warning: Test warning third/', $result); | ||||
| 
 | ||||
| 		$files = glob($path . 'error.log.*'); | ||||
| 		$this->assertEquals(2, count($files)); | ||||
| 
 | ||||
| 		$result = file_get_contents($files[0]); | ||||
| 		$this->assertRegExp('/this text is under 35 bytes/', $result); | ||||
| 
 | ||||
| 		$result = file_get_contents($files[1]); | ||||
| 		$this->assertRegExp('/Warning: Test warning second/', $result); | ||||
| 
 | ||||
| 		file_put_contents($path . 'error.log.0000000000', "The oldest log file with over 35 bytes.\n"); | ||||
| 
 | ||||
| 		sleep(1); | ||||
| 		clearstatcache(); | ||||
| 		$log->write('warning', 'Test warning fourth'); | ||||
| 
 | ||||
| 		// rotate count reached so file count should not increase
 | ||||
| 		$files = glob($path . 'error.log.*'); | ||||
| 		$this->assertEquals(2, count($files)); | ||||
| 
 | ||||
| 		$result = file_get_contents($path . 'error.log'); | ||||
| 		$this->assertRegExp('/Warning: Test warning fourth/', $result); | ||||
| 
 | ||||
| 		$result = file_get_contents(array_pop($files)); | ||||
| 		$this->assertRegExp('/Warning: Test warning third/', $result); | ||||
| 
 | ||||
| 		$result = file_get_contents(array_pop($files)); | ||||
| 		$this->assertRegExp('/Warning: Test warning second/', $result); | ||||
| 
 | ||||
| 		file_put_contents($path . 'debug.log', "this text is just greater than 35 bytes\n"); | ||||
| 		$log = new FileLog(array( | ||||
| 			'path' => $path, | ||||
| 			'size' => 35, | ||||
| 			'rotate' => 0 | ||||
| 		)); | ||||
| 		file_put_contents($path . 'debug.log.0000000000', "The oldest log file with over 35 bytes.\n"); | ||||
| 		$log->write('debug', 'Test debug'); | ||||
| 		$this->assertTrue(file_exists($path . 'debug.log')); | ||||
| 
 | ||||
| 		$result = file_get_contents($path . 'debug.log'); | ||||
| 		$this->assertRegExp('/^2[0-9]{3}-[0-9]+-[0-9]+ [0-9]+:[0-9]+:[0-9]+ Debug: Test debug/', $result); | ||||
| 		$this->assertFalse(strstr($result, 'greater than 5 bytes')); | ||||
| 		$this->assertEquals(0, count(glob($path . 'debug.log.*'))); | ||||
| 	} | ||||
| 
 | ||||
| 	public function testMaskSetting() { | ||||
| 		if (DS === '\\') { | ||||
| 			$this->markTestSkipped('File permission testing does not work on Windows.'); | ||||
| 		} | ||||
| 
 | ||||
| 		$path = TMP . 'tests' . DS; | ||||
| 		$this->_deleteLogs($path); | ||||
| 
 | ||||
| 		$log = new FileLog(array('path' => $path, 'mask' => 0666)); | ||||
| 		$log->write('warning', 'Test warning one'); | ||||
| 		$result = substr(sprintf('%o', fileperms($path . 'error.log')), -4); | ||||
| 		$expected = '0666'; | ||||
| 		$this->assertEquals($expected, $result); | ||||
| 		unlink($path . 'error.log'); | ||||
| 
 | ||||
| 		$log = new FileLog(array('path' => $path, 'mask' => 0644)); | ||||
| 		$log->write('warning', 'Test warning two'); | ||||
| 		$result = substr(sprintf('%o', fileperms($path . 'error.log')), -4); | ||||
| 		$expected = '0644'; | ||||
| 		$this->assertEquals($expected, $result); | ||||
| 		unlink($path . 'error.log'); | ||||
| 
 | ||||
| 		$log = new FileLog(array('path' => $path, 'mask' => 0640)); | ||||
| 		$log->write('warning', 'Test warning three'); | ||||
| 		$result = substr(sprintf('%o', fileperms($path . 'error.log')), -4); | ||||
| 		$expected = '0640'; | ||||
| 		$this->assertEquals($expected, $result); | ||||
| 		unlink($path . 'error.log'); | ||||
| 	} | ||||
| 
 | ||||
| /** | ||||
|  * helper function to clears all log files in specified directory | ||||
|  * | ||||
|  * @return void | ||||
|  */ | ||||
| 	protected function _deleteLogs($dir) { | ||||
| 		$files = array_merge(glob($dir . '*.log'), glob($dir . '*.log.*')); | ||||
| 		foreach ($files as $file) { | ||||
| 			unlink($file); | ||||
| 		} | ||||
| 	} | ||||
| } | ||||
|  |  | |||
							
								
								
									
										92
									
								
								lib/Cake/Test/Case/Log/Engine/SyslogLogTest.php
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										92
									
								
								lib/Cake/Test/Case/Log/Engine/SyslogLogTest.php
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,92 @@ | |||
| <?php | ||||
| /** | ||||
|  * CakePHP(tm) Tests <http://book.cakephp.org/2.0/en/development/testing.html> | ||||
|  * 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://book.cakephp.org/2.0/en/development/testing.html CakePHP(tm) Tests | ||||
|  * @package       Cake.Test.Case.Log.Engine | ||||
|  * @since         CakePHP(tm) v 2.4 | ||||
|  * @license       http://www.opensource.org/licenses/mit-license.php MIT License | ||||
|  */ | ||||
| 
 | ||||
| App::uses('SyslogLog', 'Log/Engine'); | ||||
| 
 | ||||
| /** | ||||
|  * SyslogLogTest class | ||||
|  * | ||||
|  * @package       Cake.Test.Case.Log.Engine | ||||
|  */ | ||||
| class SyslogLogTest extends CakeTestCase { | ||||
| 
 | ||||
| /** | ||||
|  * Tests that the connection to the logger is open with the right arguments | ||||
|  * | ||||
|  * @return void | ||||
|  */ | ||||
| 	public function testOpenLog() { | ||||
| 		$log = $this->getMock('SyslogLog', array('_open', '_write')); | ||||
| 		$log->expects($this->once())->method('_open')->with('', LOG_ODELAY, LOG_USER); | ||||
| 		$log->write('debug', 'message'); | ||||
| 
 | ||||
| 		$log = $this->getMock('SyslogLog', array('_open', '_write')); | ||||
| 		$log->config(array( | ||||
| 			'prefix' => 'thing', | ||||
| 			'flag' => LOG_NDELAY, | ||||
| 			'facility' => LOG_MAIL, | ||||
| 			'format' => '%s: %s' | ||||
| 		)); | ||||
| 		$log->expects($this->once())->method('_open') | ||||
| 			->with('thing', LOG_NDELAY, LOG_MAIL); | ||||
| 		$log->write('debug', 'message'); | ||||
| 	} | ||||
| 
 | ||||
| /** | ||||
|  * Tests that single lines are written to syslog | ||||
|  * | ||||
|  * @dataProvider typesProvider | ||||
|  * @return void | ||||
|  */ | ||||
| 	public function testWriteOneLine($type, $expected) { | ||||
| 		$log = $this->getMock('SyslogLog', array('_open', '_write')); | ||||
| 		$log->expects($this->once())->method('_write')->with($expected, $type . ': Foo'); | ||||
| 		$log->write($type, 'Foo'); | ||||
| 	} | ||||
| 
 | ||||
| /** | ||||
|  * Tests that multiple lines are split and logged separately | ||||
|  * | ||||
|  * @return void | ||||
|  */ | ||||
| 	public function testWriteMultiLine() { | ||||
| 		$log = $this->getMock('SyslogLog', array('_open', '_write')); | ||||
| 		$log->expects($this->at(1))->method('_write')->with(LOG_DEBUG, 'debug: Foo'); | ||||
| 		$log->expects($this->at(2))->method('_write')->with(LOG_DEBUG, 'debug: Bar'); | ||||
| 		$log->expects($this->exactly(2))->method('_write'); | ||||
| 		$log->write('debug', "Foo\nBar"); | ||||
| 	} | ||||
| 
 | ||||
| /** | ||||
|  * Data provider for the write function test | ||||
|  * | ||||
|  * @return array | ||||
|  */ | ||||
| 	public function typesProvider() { | ||||
| 		return array( | ||||
| 			array('emergency', LOG_EMERG), | ||||
| 			array('alert', LOG_ALERT), | ||||
| 			array('critical', LOG_CRIT), | ||||
| 			array('error', LOG_ERR), | ||||
| 			array('warning', LOG_WARNING), | ||||
| 			array('notice', LOG_NOTICE), | ||||
| 			array('info', LOG_INFO), | ||||
| 			array('debug', LOG_DEBUG) | ||||
| 		); | ||||
| 	} | ||||
| 
 | ||||
| } | ||||
| 
 | ||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue
	
	 Brm Ko
						Brm Ko