Chris@14: dom = new DOMDocument(); Chris@14: $this->dom->loadXML(''); Chris@14: $this->copyright = new CopyrightElement($this->dom->documentElement); Chris@14: } Chris@14: Chris@14: public function testThrowsExceptionWhenGetAuthroElementsIsCalledButNodesAreMissing() { Chris@14: $this->expectException(ManifestElementException::class); Chris@14: $this->copyright->getAuthorElements(); Chris@14: } Chris@14: Chris@14: public function testThrowsExceptionWhenGetLicenseElementIsCalledButNodeIsMissing() { Chris@14: $this->expectException(ManifestElementException::class); Chris@14: $this->copyright->getLicenseElement(); Chris@14: } Chris@14: Chris@14: public function testGetAuthorElementsReturnsAuthorElementCollection() { Chris@14: $this->dom->documentElement->appendChild( Chris@14: $this->dom->createElementNS('https://phar.io/xml/manifest/1.0', 'author') Chris@14: ); Chris@14: $this->assertInstanceOf( Chris@14: AuthorElementCollection::class, $this->copyright->getAuthorElements() Chris@14: ); Chris@14: } Chris@14: Chris@14: public function testGetLicenseElementReturnsLicenseElement() { Chris@14: $this->dom->documentElement->appendChild( Chris@14: $this->dom->createElementNS('https://phar.io/xml/manifest/1.0', 'license') Chris@14: ); Chris@14: $this->assertInstanceOf( Chris@14: LicenseElement::class, $this->copyright->getLicenseElement() Chris@14: ); Chris@14: } Chris@14: Chris@14: }