Seditio Source
Root |
./othercms/croogo-4.0.7/vendor/phar-io/manifest/tests/xml/CopyrightElementTest.php
<?php

namespace PharIo\Manifest;

use
DOMDocument;

class
CopyrightElementTest extends \PHPUnit_Framework_TestCase {
   
/**
     * @var DOMDocument
     */
   
private $dom;

   
/**
     * @var CopyrightElement
     */
   
private $copyright;

    protected function
setUp() {
       
$this->dom = new DOMDocument();
       
$this->dom->loadXML('<?xml version="1.0" ?><copyright xmlns="https://phar.io/xml/manifest/1.0" />');
       
$this->copyright = new CopyrightElement($this->dom->documentElement);
    }

    public function
testThrowsExceptionWhenGetAuthroElementsIsCalledButNodesAreMissing() {
       
$this->expectException(ManifestElementException::class);
       
$this->copyright->getAuthorElements();
    }

    public function
testThrowsExceptionWhenGetLicenseElementIsCalledButNodeIsMissing() {
       
$this->expectException(ManifestElementException::class);
       
$this->copyright->getLicenseElement();
    }

    public function
testGetAuthorElementsReturnsAuthorElementCollection() {
       
$this->dom->documentElement->appendChild(
           
$this->dom->createElementNS('https://phar.io/xml/manifest/1.0', 'author')
        );
       
$this->assertInstanceOf(
           
AuthorElementCollection::class, $this->copyright->getAuthorElements()
        );
    }

    public function
testGetLicenseElementReturnsLicenseElement() {
       
$this->dom->documentElement->appendChild(
           
$this->dom->createElementNS('https://phar.io/xml/manifest/1.0', 'license')
        );
       
$this->assertInstanceOf(
           
LicenseElement::class, $this->copyright->getLicenseElement()
        );
    }

}