You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@xerces.apache.org by ja...@apache.org on 2001/06/14 07:24:52 UTC

cvs commit: xml-xerces/perl/t DOM_Entity.t

jasons      01/06/13 22:24:52

  Added:       perl/t   DOM_Entity.t
  Log:
  	* t/DOM_Entity.t (Message):
  	test for retrieving entities from DTD
  
  Revision  Changes    Path
  1.1                  xml-xerces/perl/t/DOM_Entity.t
  
  Index: DOM_Entity.t
  ===================================================================
  # Before `make install' is performed this script should be runnable
  # with `make test'. After `make install' it should work as `perl
  # DOM_Entity.t'
  
  ######################### We start with some black magic to print on failure.
  
  # Change 1..1 below to 1..last_test_to_print .
  # (It may become useful if the test is moved to ./t subdirectory.)
  
  BEGIN { $| = 1; print "1..2\n"; }
  END {print "not ok 1\n" unless $loaded;}
  use Carp;
  use XML::Xerces;
  
  use lib 't';
  use TestUtils qw(result $DOM);
  use vars qw($i $loaded);
  use strict;
  
  $loaded = 1;
  $i = 1;
  result($loaded);
  
  ######################### End of black magic.
  
  # Insert your test code below (better if it prints "ok 13"
  # (correspondingly "not ok 13") depending on the success of chunk 13
  # of the test code):
  
  my $document = <<EOT;
  <?xml version="1.0" standalone="yes"?>
  <!DOCTYPE foo [
  <!ENTITY data    "DATA">
  <!ENTITY bar    "BAR">
  <!ELEMENT  foo        ANY>
  ]>
  <foo>This is a test &data; of entities</foo>
  EOT
  
  $DOM->setCreateEntityReferenceNodes(1);
  $DOM->parse( new XML::Xerces::MemBufInputSource($document, 'list') );
  
  my $doc = $DOM->getDocument();
  my $doctype = $doc->getDoctype();
  
  # get the single <element> node
  my %attrs = $doctype->getEntities();
  result(exists $attrs{data} && $attrs{data} eq 'DATA');
  
  result(exists $attrs{bar} && $attrs{bar} eq 'BAR');
  
  
  

---------------------------------------------------------------------
To unsubscribe, e-mail: xerces-cvs-unsubscribe@xml.apache.org
For additional commands, e-mail: xerces-cvs-help@xml.apache.org