<?php declare(strict_types = 1); namespace PharIo\Manifest; use DOMDocument; use DOMElement; class ContainsElementTest extends \PHPUnit\Framework\TestCase { /** @var DOMElement */ private $domElement; /** @var ContainsElement */ private $contains; protected function setUp(): void { $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(): void { $this->assertEquals('5.6.5', $this->contains->getVersion()); } public function testThrowsExceptionWhenVersionAttributeIsMissing(): void { $this->domElement->removeAttribute('version'); $this->expectException(ManifestElementException::class); $this->contains->getVersion(); } public function testNameCanBeRetrieved(): void { $this->assertEquals('phpunit/phpunit', $this->contains->getName()); } public function testThrowsExceptionWhenNameAttributeIsMissing(): void { $this->domElement->removeAttribute('name'); $this->expectException(ManifestElementException::class); $this->contains->getName(); } public function testTypeCanBeRetrieved(): void { $this->assertEquals('application', $this->contains->getType()); } public function testThrowsExceptionWhenTypeAttributeIsMissing(): void { $this->domElement->removeAttribute('type'); $this->expectException(ManifestElementException::class); $this->contains->getType(); } public function testGetExtensionElementReturnsExtensionElement(): void { $this->domElement->appendChild( $this->domElement->ownerDocument->createElementNS('https://phar.io/xml/manifest/1.0', 'extension') ); $this->assertInstanceOf(ExtensionElement::class, $this->contains->getExtensionElement()); } }
Name | Type | Size | Permission | Actions |
---|---|---|---|---|
AuthorElementCollectionTest.php | File | 636 B | 0644 |
|
AuthorElementTest.php | File | 759 B | 0644 |
|
BundlesElementTest.php | File | 1.21 KB | 0644 |
|
ComponentElementCollectionTest.php | File | 611 B | 0644 |
|
ComponentElementTest.php | File | 765 B | 0644 |
|
ContainsElementTest.php | File | 2.09 KB | 0644 |
|
CopyrightElementTest.php | File | 1.69 KB | 0644 |
|
ElementCollectionTest.php | File | 543 B | 0644 |
|
ExtElementCollectionTest.php | File | 636 B | 0644 |
|
ExtElementTest.php | File | 552 B | 0644 |
|
ExtensionElementTest.php | File | 789 B | 0644 |
|
LicenseElementTest.php | File | 761 B | 0644 |
|
ManifestDocumentTest.php | File | 3.85 KB | 0644 |
|
PhpElementTest.php | File | 1.4 KB | 0644 |
|
RequiresElementTest.php | File | 1.05 KB | 0644 |
|