php-src/ext/dom/tests/DOMDocumentType_basic_001.phpt
Eric Stewart 86fed7fac7 Add tests:
DOMComment::__construct() with constructor called twice.
DOMDocumentFragment::appendXML() with unbound fragment.
DOMDocumentFragment::appendXML() with unbalanced chunks.
DOMDocumentFragment::__construct() called twice.
DOMDocumentType: basic access to all properties.
DOMDocumentType::name with invalid state.
DOMDocumentType::entities with invalid state.
DOMDocumentType::notations with invalid state.
DOMDocumentType::publicId with invalid state.
DOMDocumentType::publicId with empty value.
DOMDocumentType::systemId with invalid state.
DOMDocumentType::systemId with empty value.
DOMDocumentType::internalSubset with invalid state.
2009-05-26 06:09:18 +00:00

48 lines
1.5 KiB
PHP

--TEST--
DOMDocumentType: basic access to all properties.
--CREDITS--
Eric Lee Stewart <ericleestewart@gmail.com>
# TestFest Atlanta 2009-05-25
--SKIPIF--
<?php require_once('skipif.inc'); ?>
--FILE--
<?php
// Access publicId, systemId, name, internalSubset all with values.
$xml = '<?xml version="1.0" encoding="UTF-8" ?>';
$xml .= '<!DOCTYPE chapter PUBLIC "-//OASIS//DTD DocBook XML//EN" "docbookx.dtd">';
$xml .= '<chapter>1</chapter>';
$doc = new DOMDocument();
$doc->loadXML($xml);
$doctype = $doc->doctype;
print "publicId: ".$doctype->publicId."\n";
print "systemId: ".$doctype->systemId."\n";
print "name: ".$doctype->name."\n";
print "internalSubset: ".$doctype->internalSubset."\n";
// Access entities and notations with values.
$xml = '<?xml version="1.0" encoding="UTF-8" ?>';
$xml .= '<!DOCTYPE img [';
$xml .= ' <!ELEMENT img EMPTY>';
$xml .= ' <!ATTLIST img src ENTITY #REQUIRED>';
$xml .= ' <!ENTITY logo SYSTEM "http://www.xmlwriter.net/logo.gif" NDATA gif>';
$xml .= ' <!NOTATION gif PUBLIC "gif viewer">';
$xml .= ']>';
$xml .= '<img src="logo"/>';
$doc = new DOMDocument();
$doc->loadXML($xml);
$doctype = $doc->doctype;
$entities = $doctype->entities;
$entity = $entities->item(0);
print 'entity: '.$entity->nodeName."\n";
$notations = $doctype->notations;
$notation = $notations->item(0);
print 'notation: '.$notation->nodeName."\n";
?>
--EXPECT--
publicId: -//OASIS//DTD DocBook XML//EN
systemId: docbookx.dtd
name: chapter
internalSubset: <!DOCTYPE chapter PUBLIC "-//OASIS//DTD DocBook XML//EN" "docbookx.dtd">
entity: logo
notation: gif