Anton Grebnev
13 years ago
3 changed files with 115 additions and 3 deletions
@ -0,0 +1,112 @@ |
|||||
|
<?php |
||||
|
|
||||
|
/* |
||||
|
* @copyright NetMonsters <team@netmonsters.ru> |
||||
|
* @link http://netmonsters.ru |
||||
|
* @package Majestic |
||||
|
* @subpackage UnitTests |
||||
|
* @since 2011-10-.. |
||||
|
* |
||||
|
* Unit tests for Load class |
||||
|
*/ |
||||
|
|
||||
|
class LoadTest extends PHPUnit_Framework_TestCase |
||||
|
{ |
||||
|
|
||||
|
private static $inc_dirs = array(); |
||||
|
private static $file; |
||||
|
|
||||
|
/** |
||||
|
* @TODO: Load->buildAutoload() - uses two paths - PATH . '/' . APP . '/src' and PATH . '/lib' those are not checked. Can couse error. |
||||
|
* @expectedException UnexpectedValueException |
||||
|
* @expectedException PHPUnit_Framework_Error |
||||
|
*/ |
||||
|
public static function setUpBeforeClass() |
||||
|
{ |
||||
|
define('PATH', realpath(dirname(__FILE__) . '/../../..')); |
||||
|
|
||||
|
// default application name
|
||||
|
if (!defined('APP')) { |
||||
|
define('APP', 'lib/core/tests/face'); |
||||
|
} |
||||
|
|
||||
|
self::$file = PATH . '/'. APP. '/cache//autoload.php'; |
||||
|
|
||||
|
// value - if dir exists (to delete it if it was created), default true
|
||||
|
self::$inc_dirs[PATH . '/' . APP . '/src'] = true; |
||||
|
self::$inc_dirs[PATH . '/' . APP . '/cache'] = true; |
||||
|
self::$inc_dirs[PATH . '/lib'] = true; |
||||
|
|
||||
|
foreach (self::$inc_dirs as $dir => &$is_exist) { |
||||
|
if (!file_exists($dir)) { |
||||
|
$is_exist = false; |
||||
|
mkdir($dir, 0777, true); |
||||
|
} |
||||
|
} |
||||
|
} |
||||
|
|
||||
|
|
||||
|
public function testSetAutoLoadFrom() |
||||
|
{ |
||||
|
// autoload
|
||||
|
require (PATH . '/lib/core/Load.php'); |
||||
|
Load::setAutoloadFrom(self::$file); |
||||
|
|
||||
|
$autoload = require(self::$file); |
||||
|
$this->assertNotEmpty($autoload); |
||||
|
} |
||||
|
|
||||
|
public function testAutoloadArrayExists() |
||||
|
{ |
||||
|
$this->assertFileExists(self::$file); |
||||
|
} |
||||
|
|
||||
|
/** |
||||
|
* @TODO: Load - check if input file returns array |
||||
|
*/ |
||||
|
public function testFileForArray() |
||||
|
{ |
||||
|
$autoload = require(self::$file); |
||||
|
$this->assertInternalType('array', $autoload); |
||||
|
} |
||||
|
|
||||
|
public function testAutoloadArrayNotEmpty() |
||||
|
{ |
||||
|
$autoload = require(self::$file); |
||||
|
$this->assertNotEmpty($autoload); |
||||
|
$this->assertArrayHasKey('Action', $autoload); |
||||
|
} |
||||
|
|
||||
|
public function testAutoloadGetFilePath() |
||||
|
{ |
||||
|
$autoload = require(self::$file); |
||||
|
$this->assertNotEmpty($autoload['Registry']); |
||||
|
} |
||||
|
|
||||
|
/** |
||||
|
* @TODO: Load::getFilePath - check for wrong index |
||||
|
* @expectedException PHPUnit_Framework_Error |
||||
|
*/ |
||||
|
public function testAutoloadGetFilePathNullIndex() |
||||
|
{ |
||||
|
$autoload = require(self::$file); |
||||
|
$this->assertNotEmpty($autoload['anton']); |
||||
|
|
||||
|
} |
||||
|
|
||||
|
|
||||
|
public static function tearDownAfterClass() |
||||
|
{ |
||||
|
if(file_exists(self::$file)) { |
||||
|
unlink(self::$file); |
||||
|
} |
||||
|
|
||||
|
foreach (self::$inc_dirs as $dir => $is_exist) { |
||||
|
if (!$is_exist) { |
||||
|
rmdir($dir); |
||||
|
} |
||||
|
} |
||||
|
rmdir(PATH . '/' . APP); |
||||
|
} |
||||
|
|
||||
|
} |
Write
Preview
Loading…
Cancel
Save
Reference in new issue