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(), '
'.print_r($this->JSO, TRUE).'
'); } } // -------------------------------------------------------------------------- /** * 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() { } }