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