/** * @group Test */ public function testDenormalizationWithData() { $object = new E(); $objectA = new AChildren(); $objectA->setRid(11); $objectA->setName(23); $objectA->setFloat(2.3); $objectA->setHiddenStatus(true); $object->setRid(2); $object->setObject($objectA); $object->setArrayOfObjects(array($objectA)); $array = array('rid' => 23, 'object' => array('id' => 3, 'float' => null), 'arrayOfObjects' => array(array('id' => 3, 'float' => null))); $result = $this->unitUnderTest->denormalize($array, $object); $this->assertInstanceOf('Opensoft\\SimpleSerializer\\Tests\\Metadata\\Driver\\Fixture\\A\\E', $result); $this->assertInstanceOf('Opensoft\\SimpleSerializer\\Tests\\Metadata\\Driver\\Fixture\\A\\AChildren', $result->getObject()); $objects = $result->getArrayOfObjects(); $this->assertCount(1, $objects); $this->assertInstanceOf('Opensoft\\SimpleSerializer\\Tests\\Metadata\\Driver\\Fixture\\A\\AChildren', $objects[0]); $this->assertEquals(23, $result->getRid()); $this->assertEquals(3, $result->getObject()->getRid()); $this->assertEquals(23, $result->getObject()->getName()); $this->assertNull($result->getObject()->getFloat()); $this->assertTrue($result->getObject()->getHiddenStatus()); $this->assertEquals(3, $objects[0]->getRid()); $this->assertEquals(23, $objects[0]->getName()); $this->assertNull($objects[0]->getFloat()); $this->assertTrue($objects[0]->getHiddenStatus()); }
public function testArraySerialize() { $time = time(); $testTime = new DateTime(date('Y-m-d H:i:s', $time)); $aChildren = new AChildren(); $aChildren->setRid(1); $aChildren->setStatus(true); $aChildren->setHiddenStatus(true); $aChildren->setFloat(3.23); $aChildren->setArray(array(3, null)); $aChildren->setAssocArray(array('tr' => 2)); $aChildren->setDateTime($testTime); $aChildren->setNull(null); $aChildren->setName('name'); $e = new E(); $e->setRid(3); $e->setObject($aChildren); $e->setArrayOfObjects(array($aChildren)); $result = $this->unitUnderTest->serialize(array($e)); $expectedString = '[{"rid":3,"object":{"id":1,"name":"name","status":true,"float":3.23,"dateTime":"' . $testTime->format(DateTime::ISO8601) . '","null":null,"array":[3,null],"assocArray":{"tr":2}},"arrayOfObjects":[{"id":1,"name":"name","status":true,"float":3.23,"dateTime":"' . $testTime->format(DateTime::ISO8601) . '","null":null,"array":[3,null],"assocArray":{"tr":2}}]}]'; $this->assertEquals($expectedString, $result); }