144 lines
2.5 KiB
PHP
144 lines
2.5 KiB
PHP
<?php
|
|
|
|
require_once('simpletest/autorun.php');
|
|
require_once('../src/sys/common.php');
|
|
|
|
/**
|
|
* Test class for /src/sys/common.php
|
|
*/
|
|
class commonTest extends UnitTestCase {
|
|
|
|
function __construct()
|
|
{
|
|
parent::__construct('Common.php Tests');
|
|
}
|
|
|
|
function setUp()
|
|
{
|
|
$this->empty = array();
|
|
$this->object = new JSObject();
|
|
$this->array_like = new JSObject(array('foo' => 'bar'));
|
|
}
|
|
|
|
function tearDown()
|
|
{
|
|
unset($this->empty);
|
|
unset($this->object);
|
|
unset($this->array_like);
|
|
}
|
|
|
|
function testCreation()
|
|
{
|
|
// Empty is not array like
|
|
$this->assertFalse(is_like_array($this->empty));
|
|
|
|
// Empty object is array like - because objects are truthy
|
|
$this->assertTrue(is_like_array($this->object));
|
|
}
|
|
|
|
}
|
|
|
|
// --------------------------------------------------------------------------
|
|
|
|
/**
|
|
* Test Class for JSObject class
|
|
*/
|
|
class JSObjectTest extends UnitTestCase {
|
|
|
|
function __construct()
|
|
{
|
|
parent::__construct('JSObject Class Tests');
|
|
}
|
|
|
|
function setUp()
|
|
{
|
|
$this->JSO = new JSObject(array(
|
|
'foo' => 54,
|
|
'bar' => 'baz',
|
|
));
|
|
}
|
|
|
|
function tearDown()
|
|
{
|
|
unset($this->JSO);
|
|
}
|
|
|
|
function testCreation()
|
|
{
|
|
|
|
// __toString produces same output as print_r by default
|
|
$this->assertIdentical($this->JSO->__toString(), '<pre>'.print_r($this->JSO, TRUE).'</pre>');
|
|
}
|
|
|
|
}
|
|
|
|
// --------------------------------------------------------------------------
|
|
|
|
/**
|
|
* Test class for miniMVC class
|
|
*/
|
|
class miniMVCTest extends UnitTestCase {
|
|
|
|
function __construct()
|
|
{
|
|
parent::__construct('miniMVC Class Tests');
|
|
}
|
|
|
|
function setUp()
|
|
{
|
|
$this->mm = new miniMVC();
|
|
}
|
|
|
|
function tearDown()
|
|
{
|
|
unset($this->mm);
|
|
}
|
|
|
|
function testCreation()
|
|
{
|
|
// miniMVC::get_instance returns reference to latest miniMVC object
|
|
$this->assertReference($this->mm, miniMVC::get_instance());
|
|
|
|
// Expect an error trying to clone the miniMVC object
|
|
$this->expectError("Clone is not allowed.");
|
|
$mm2 = clone $this->mm;
|
|
|
|
// miniMVC extends JSObject, right?
|
|
$this->assertIsA($this->mm, 'JSObject');
|
|
|
|
// Invoke function should return the same reference than miniMVC::get_instance() does
|
|
$mm = $this->mm;
|
|
$this->assertIdentical($mm(), miniMVC::get_instance());
|
|
$this->assertIdentical($this->mm->__invoke(), miniMVC::get_instance());
|
|
|
|
}
|
|
|
|
}
|
|
|
|
// --------------------------------------------------------------------------
|
|
|
|
class DBTest extends UnitTestCase {
|
|
|
|
function __construct()
|
|
{
|
|
|
|
}
|
|
|
|
function setUp()
|
|
{
|
|
|
|
}
|
|
|
|
function tearDown()
|
|
{
|
|
|
|
}
|
|
|
|
function testCreation()
|
|
{
|
|
|
|
}
|
|
|
|
}
|
|
|