/** * @covers FOF30\Hal\Document::getEmbedded */ public function testGetEmbedded() { $data = array('test1' => 'one', 'test2' => 'two', 'testArray' => array('testUno' => 'uno', 'testDue' => 'Due')); $document = new Document($data); $newDocument = new Document(array('newDocData' => 'something something something data')); // Add an embedded document $document->addEmbedded('childDoc', $newDocument); $embedded = $this->getObjectAttribute($document, '_embedded'); $this->assertEquals($newDocument, $embedded['childDoc'], 'Line: ' . __LINE__ . '.'); // Append another embedded document $otherDocument = new Document(array('otherDocData' => 'other data')); $document->addEmbedded('childDoc', $otherDocument, true); $allEmbedded = $this->getObjectAttribute($document, '_embedded'); $testEmbedded = $document->getEmbedded(); $this->assertEquals($allEmbedded, $testEmbedded, 'Line: ' . __LINE__ . '.'); $testEmbedded = $document->getEmbedded('childDoc'); $this->assertEquals($allEmbedded['childDoc'], $testEmbedded, 'Line: ' . __LINE__ . '.'); }