%PDF- <> %âãÏÓ endobj 2 0 obj <> endobj 3 0 obj <>/ExtGState<>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI] >>/Annots[ 28 0 R 29 0 R] /MediaBox[ 0 0 595.5 842.25] /Contents 4 0 R/Group<>/Tabs/S>> endobj ºaâÚÎΞ-ÌE1ÍØÄ÷{òò2ÿ ÛÖ^ÔÀá TÎ{¦?§®¥kuµùÕ5sLOšuY>endobj 2 0 obj<>endobj 2 0 obj<>endobj 2 0 obj<>endobj 2 0 obj<> endobj 2 0 obj<>endobj 2 0 obj<>es 3 0 R>> endobj 2 0 obj<> ox[ 0.000000 0.000000 609.600000 935.600000]/Fi endobj 3 0 obj<> endobj 7 1 obj<>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI]>>/Subtype/Form>> stream
<?php
namespace PharIo\Manifest;
use DOMDocument;
use DOMElement;
class ContainsElementTest extends \PHPUnit\Framework\TestCase {
/**
* @var DOMElement
*/
private $domElement;
/**
* @var ContainsElement
*/
private $contains;
protected function setUp() {
$dom = new DOMDocument();
$dom->loadXML('<?xml version="1.0" ?><php xmlns="https://phar.io/xml/manifest/1.0" name="phpunit/phpunit" version="5.6.5" type="application" />');
$this->domElement = $dom->documentElement;
$this->contains = new ContainsElement($this->domElement);
}
public function testVersionCanBeRetrieved() {
$this->assertEquals('5.6.5', $this->contains->getVersion());
}
public function testThrowsExceptionWhenVersionAttributeIsMissing() {
$this->domElement->removeAttribute('version');
$this->expectException(ManifestElementException::class);
$this->contains->getVersion();
}
public function testNameCanBeRetrieved() {
$this->assertEquals('phpunit/phpunit', $this->contains->getName());
}
public function testThrowsExceptionWhenNameAttributeIsMissing() {
$this->domElement->removeAttribute('name');
$this->expectException(ManifestElementException::class);
$this->contains->getName();
}
public function testTypeCanBeRetrieved() {
$this->assertEquals('application', $this->contains->getType());
}
public function testThrowsExceptionWhenTypeAttributeIsMissing() {
$this->domElement->removeAttribute('type');
$this->expectException(ManifestElementException::class);
$this->contains->getType();
}
public function testGetExtensionElementReturnsExtensionElement() {
$this->domElement->appendChild(
$this->domElement->ownerDocument->createElementNS('https://phar.io/xml/manifest/1.0', 'extension')
);
$this->assertInstanceOf(ExtensionElement::class, $this->contains->getExtensionElement());
}
}