protected function doTransformLink(array $data) { $link = new Link(); isset($data[self::LINK_KEY_HREF]) && $link->setHref($data[self::LINK_KEY_HREF]); isset($data[self::LINK_KEY_TEMPLATED]) && $link->setTemplated($data[self::LINK_KEY_TEMPLATED]); isset($data[self::LINK_KEY_TYPE]) && $link->setType($data[self::LINK_KEY_TYPE]); isset($data[self::LINK_KEY_DEPRECATION]) && $link->setDeprecation($data[self::LINK_KEY_DEPRECATION]); isset($data[self::LINK_KEY_NAME]) && $link->setName($data[self::LINK_KEY_NAME]); isset($data[self::LINK_KEY_PROFILE]) && $link->setProfile($data[self::LINK_KEY_PROFILE]); isset($data[self::LINK_KEY_TITLE]) && $link->setTitle($data[self::LINK_KEY_TITLE]); isset($data[self::LINK_KEY_HREFLANG]) && $link->setHreflang($data[self::LINK_KEY_HREFLANG]); return $link; }
public function testWrite() { $resource = $this->createResource(self::EXAMPLE_URI); $resource->setData(['value' => 'bar', 'bar' => 1, 'foo' => true, 'array' => ['bar' => 'foo'], 'arrayOfarrays' => [['bar' => 'foo'], ['foo' => 'bar']], 'arrayOfstrings' => ['foo', 'bar']]); $link = new Link('foo'); $link->setName('name'); $link->setHreflang('lang'); $link->setTitle('title'); $link->setTemplated(true); $resource->setLink('quz', $link); $resource->setLinks('foo', [$link, new Link('qux')]); $subResource = $this->createResource(self::EXAMPLE_URI)->setData(['value' => 'qux']); $subResource->addResource('foo', $this->createResource(self::EXAMPLE_URI)->setData(['foo' => 'qux'])); $subResource->addResource('baz', $this->createResource()->setData(['foo' => 'qux'])); $resource->addResources('baz', [$subResource, $this->createResource()->setData(['baz' => 'foo'])]); $subResource->linkResource('qux', $this->createResource(self::EXAMPLE_URI)->setData([])->setTitle('qux')); $subResource->linkResources('foo', [$this->createResource(self::EXAMPLE_URI)->setData([]), $this->createResource(self::EXAMPLE_URI)->setData([])]); $formatter = new $this->class(true); $this->assertSame(trim($this->readResource($this->toPretty)), trim($formatter->execute($resource, true))); $formatter = new $this->class(false); $this->assertSame(trim($this->readResource($this->toNonPretty)), trim($formatter->execute($resource))); }
public function testGetAttributesEmpty() { $expected = []; $link = new Link(); $this->assertSame($expected, $link->getAttributes()); }
public function getSelfLink() { if (!$this->uri) { return null; } $link = new Link($this->getURI()); if ($title = $this->getTitle()) { $link->setTitle($title); } if ($name = $this->getId()) { $link->setName($name); } return $link; }