public function testConstructorWithArgsSetsOptions() { $uriMock = $this->getMock('Zend\\Uri\\Uri'); $validator = new Validator\Uri($uriMock, false, false); $this->assertEquals($uriMock, $validator->getUriHandler()); $this->assertFalse($validator->getAllowRelative()); $this->assertFalse($validator->getAllowAbsolute()); }
public static function factory($url) { $video = new static(); $validator = new UriValidator(); if (!$validator->isValid($url)) { throw new Exception\InvalidArgumentException(sprintf('Input url format not correct')); } $video->setUrl($url); $urlHandler = $validator->getUriHandler(); $host = strtolower($urlHandler->getHost()); $adapters = $video->getAdapters(); if (!isset($adapters[$host])) { return $video; } $adapterName = $adapters[$host]; $adapterClass = false === strpos($adapterName, '\\') ? 'Video\\Service\\Adapter\\' . $adapterName : $adapterName; $video->setAdapter(new $adapterClass($url)); return $video; }
public function testUriHandlerCanBeSpecifiedAsString() { $this->validator->setUriHandler('Zend\\Uri\\Http'); $this->assertInstanceOf('Zend\\Uri\\Http', $this->validator->getUriHandler()); }