Browse Source

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.
experimental/5.3-FPM
Eric Stewart 17 years ago
parent
commit
86fed7fac7
  1. 19
      ext/dom/tests/DOMComment_construct_basic_001.phpt
  2. 19
      ext/dom/tests/DOMDocumentFragment_appendXML_error_002.phpt
  3. 19
      ext/dom/tests/DOMDocumentFragment_appendXML_error_003.phpt
  4. 16
      ext/dom/tests/DOMDocumentFragment_construct_basic_002.phpt
  5. 48
      ext/dom/tests/DOMDocumentType_basic_001.phpt
  6. 14
      ext/dom/tests/DOMDocumentType_entities_error_001.phpt
  7. 14
      ext/dom/tests/DOMDocumentType_internalSubset_error_001.phpt
  8. 14
      ext/dom/tests/DOMDocumentType_name_error_001.phpt
  9. 14
      ext/dom/tests/DOMDocumentType_notations_error_001.phpt
  10. 19
      ext/dom/tests/DOMDocumentType_publicId_basic_001.phpt
  11. 14
      ext/dom/tests/DOMDocumentType_publicId_error_001.phpt
  12. 19
      ext/dom/tests/DOMDocumentType_systemId_basic_001.phpt
  13. 14
      ext/dom/tests/DOMDocumentType_systemId_error_001.phpt

19
ext/dom/tests/DOMComment_construct_basic_001.phpt

@ -0,0 +1,19 @@
--TEST--
DOMComment::__construct() with constructor called twice.
--CREDITS--
Eric Lee Stewart <ericleestewart@gmail.com>
# TestFest Atlanta 2009-05-25
--SKIPIF--
<?php require_once('skipif.inc'); ?>
--FILE--
<?php
$dom = new DOMDocument('1.0', 'UTF-8');
$element = $dom->appendChild(new DOMElement('root'));
$comment = new DOMComment("This is the first comment.");
$comment->__construct("This is the second comment.");
$comment = $element->appendChild($comment);
print $dom->saveXML();
?>
--EXPECT--
<?xml version="1.0" encoding="UTF-8"?>
<root><!--This is the second comment.--></root>

19
ext/dom/tests/DOMDocumentFragment_appendXML_error_002.phpt

@ -0,0 +1,19 @@
--TEST--
DOMDocumentFragment::appendXML() with unbound fragment.
--CREDITS--
Eric Lee Stewart <ericleestewart@gmail.com>
# TestFest Atlanta 2009-05-24
--SKIPIF--
<?php require_once('skipif.inc'); ?>
--FILE--
<?php
$fragment = new DOMDocumentFragment();
$fragment->appendXML('<bait>crankbait</bait>');
$document->appendChild($fragment);
?>
--EXPECTF--
Fatal error: Uncaught exception 'DOMException' with message 'No Modification Allowed Error' in %s:%d
Stack trace:
#0 %s(%d): DOMDocumentFragment->appendXML('<bait>crankbait...')
#1 {main}
thrown in %s on line %d

19
ext/dom/tests/DOMDocumentFragment_appendXML_error_003.phpt

@ -0,0 +1,19 @@
--TEST--
DOMDocumentFragment::appendXML() with unbalanced chunks.
--CREDITS--
Eric Lee Stewart <ericleestewart@gmail.com>
# TestFest Atlanta 2009-05-24
--SKIPIF--
<?php require_once('skipif.inc'); ?>
--FILE--
<?php
$document = new DOMDocument;
$root = $document->createElement('root');
$document->appendChild($root);
$fragment = $document->createDocumentFragment();
@$fragment->appendXML('<foo>is<bar>great</foo>');
$root->appendChild($fragment);
?>
--EXPECTF--
Warning: DOMNode::appendChild(): Document Fragment is empty in %s on line %d

16
ext/dom/tests/DOMDocumentFragment_construct_basic_002.phpt

@ -0,0 +1,16 @@
--TEST--
DOMDocumentFragment::__construct() called twice.
--CREDITS--
Eric Lee Stewart <ericleestewart@gmail.com>
# TestFest Atlanta 2009-05-24
--SKIPIF--
<?php require_once('skipif.inc'); ?>
--FILE--
<?php
$fragment = new DOMDocumentFragment();
$fragment->__construct();
var_dump($fragment);
?>
--EXPECTF--
object(DOMDocumentFragment)#%d (%d) {
}

48
ext/dom/tests/DOMDocumentType_basic_001.phpt

@ -0,0 +1,48 @@
--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

14
ext/dom/tests/DOMDocumentType_entities_error_001.phpt

@ -0,0 +1,14 @@
--TEST--
DOMDocumentType::entities with invalid state.
--CREDITS--
Eric Lee Stewart <ericleestewart@gmail.com>
# TestFest Atlanta 2009-05-25
--SKIPIF--
<?php require_once('skipif.inc'); ?>
--FILE--
<?php
$doctype = new DOMDocumentType();
$entities = $doctype->entities;
?>
--EXPECTF--
Warning: main(): Invalid State Error in %s on line %d

14
ext/dom/tests/DOMDocumentType_internalSubset_error_001.phpt

@ -0,0 +1,14 @@
--TEST--
DOMDocumentType::internalSubset with invalid state.
--CREDITS--
Eric Lee Stewart <ericleestewart@gmail.com>
# TestFest Atlanta 2009-05-25
--SKIPIF--
<?php require_once('skipif.inc'); ?>
--FILE--
<?php
$doctype = new DOMDocumentType();
$internalSubset = $doctype->internalSubset;
?>
--EXPECTF--
Warning: main(): Invalid State Error in %s on line %d

14
ext/dom/tests/DOMDocumentType_name_error_001.phpt

@ -0,0 +1,14 @@
--TEST--
DOMDocumentType::name with invalid state.
--CREDITS--
Eric Lee Stewart <ericleestewart@gmail.com>
# TestFest Atlanta 2009-05-25
--SKIPIF--
<?php require_once('skipif.inc'); ?>
--FILE--
<?php
$doctype = new DOMDocumentType();
$name = $doctype->name;
?>
--EXPECTF--
Warning: main(): Invalid State Error in %s on line %d

14
ext/dom/tests/DOMDocumentType_notations_error_001.phpt

@ -0,0 +1,14 @@
--TEST--
DOMDocumentType::notations with invalid state.
--CREDITS--
Eric Lee Stewart <ericleestewart@gmail.com>
# TestFest Atlanta 2009-05-25
--SKIPIF--
<?php require_once('skipif.inc'); ?>
--FILE--
<?php
$doctype = new DOMDocumentType();
$notations = $doctype->notations;
?>
--EXPECTF--
Warning: main(): Invalid State Error in %s on line %d

19
ext/dom/tests/DOMDocumentType_publicId_basic_001.phpt

@ -0,0 +1,19 @@
--TEST--
DOMDocumentType::publicId with empty value.
--CREDITS--
Eric Lee Stewart <ericleestewart@gmail.com>
# TestFest Atlanta 2009-05-25
--SKIPIF--
<?php require_once('skipif.inc'); ?>
--FILE--
<?php
$xml = '<?xml version="1.0" encoding="UTF-8" ?>';
$xml .= '<!DOCTYPE chapter SYSTEM "http://www.xmlwriter.net/logo.gif">';
$xml .= '<chapter>1</chapter>';
$doc = new DOMDocument();
$doc->loadXML($xml);
$doctype = $doc->doctype;
var_dump($doctype->publicId);
?>
--EXPECT--
string(0) ""

14
ext/dom/tests/DOMDocumentType_publicId_error_001.phpt

@ -0,0 +1,14 @@
--TEST--
DOMDocumentType::publicId with invalid state.
--CREDITS--
Eric Lee Stewart <ericleestewart@gmail.com>
# TestFest Atlanta 2009-05-25
--SKIPIF--
<?php require_once('skipif.inc'); ?>
--FILE--
<?php
$doctype = new DOMDocumentType();
$publicId = $doctype->publicId;
?>
--EXPECTF--
Warning: main(): Invalid State Error in %s on line %d

19
ext/dom/tests/DOMDocumentType_systemId_basic_001.phpt

@ -0,0 +1,19 @@
--TEST--
DOMDocumentType::systemId with empty value.
--CREDITS--
Eric Lee Stewart <ericleestewart@gmail.com>
# TestFest Atlanta 2009-05-25
--SKIPIF--
<?php require_once('skipif.inc'); ?>
--FILE--
<?php
$xml = '<?xml version="1.0" encoding="UTF-8" ?>';
$xml .= '<!DOCTYPE chapter>';
$xml .= '<chapter>1</chapter>';
$doc = new DOMDocument();
$doc->loadXML($xml);
$doctype = $doc->doctype;
var_dump($doctype->systemId);
?>
--EXPECT--
string(0) ""

14
ext/dom/tests/DOMDocumentType_systemId_error_001.phpt

@ -0,0 +1,14 @@
--TEST--
DOMDocumentType::systemId with invalid state.
--CREDITS--
Eric Lee Stewart <ericleestewart@gmail.com>
# TestFest Atlanta 2009-05-25
--SKIPIF--
<?php require_once('skipif.inc'); ?>
--FILE--
<?php
$doctype = new DOMDocumentType();
$systemId = $doctype->systemId;
?>
--EXPECTF--
Warning: main(): Invalid State Error in %s on line %d
Loading…
Cancel
Save