/[suikacvs]/messaging/manakai/t/DOM-DOMImplementation.t
Suika

Contents of /messaging/manakai/t/DOM-DOMImplementation.t

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.6 - (hide annotations) (download) (as text)
Sat Jul 14 16:32:28 2007 UTC (17 years, 4 months ago) by wakaba
Branch: MAIN
Changes since 1.5: +3 -2 lines
File MIME type: application/x-troff
++ manakai/t/ChangeLog	14 Jul 2007 16:32:13 -0000
2007-07-15  Wakaba  <wakaba@suika.fam.cx>

	* DOM-TreeWalker.t, DOM-SerialWalker.t: New test scripts.

	* DOM-DOMImplementation.t: Tests for |Traversal| feature
	are added.

	* DOM-Node.t: Tests for |Traversal| feature are added.

++ manakai/lib/Message/DOM/ChangeLog	14 Jul 2007 16:31:23 -0000
2007-07-15  Wakaba  <wakaba@suika.fam.cx>

	* TreeWalker.pm, SerialWalker.pm: New Perl modules.

	* Text.pm (whole_text): Parameter index number has
	been changed to support new |NodeFilter| Perl binding
	definition.

2007-07-14  Wakaba  <wakaba@suika.fam.cx>

	* AttributeDefinition.pm, DOMElement.pm, DocumentType.pm,
	ElementTypeDefinition.pm, Entity.pm, EntityReference.pm,
	Notation.pm, ProcessingInstruction.pm (AUTOLOAD): Don't croak even if an attempt is made to modify a read-only attribute.

	* DOMConfiguration.pm (can_set_parameter,
	set_parameter): Don't allow to set the value
	to a string other than <http://www.w3.org/TR/REC-xml> (XML 1.0 DTD).

	* DOMDocument.pm (Message::IF::DocumentTraversal): New interface.
	(create_tree_walker, manakai_create_serial_walker): References
	and prototypes are added.

	* DOMException.pm (NULLPO_ERR): New error type:-).

	* DOMImplementation.pm ($HasFeature): Feature |Traversal|,
	version |2.0|, is added.

1 wakaba 1.1 #!/usr/bin/perl
2     use strict;
3     use Test;
4 wakaba 1.6 BEGIN { plan tests => 23 }
5 wakaba 1.1
6     require Message::DOM::DOMImplementation;
7    
8 wakaba 1.4 my $dom = Message::DOM::DOMImplementation->new;
9 wakaba 1.1
10     ok $dom->isa ('Message::DOM::DOMImplementation');
11     ok $dom->isa ('Message::IF::DOMImplementation');
12    
13     ## AUTOLOAD test
14 wakaba 1.3 {
15     ok $dom->can ('create_uri_reference') ? 1 : 0, 1, "can create_uri_reference";
16     my $uri = $dom->create_uri_reference ('http://www.uri.test/');
17     ok UNIVERSAL::isa ($uri, 'Message::IF::URIReference');
18     }
19 wakaba 1.1
20 wakaba 1.3 {
21     ok $dom->can ('create_document') ? 1 : 0, 1, "can create_document";
22     my $doc = $dom->create_document;
23     ok UNIVERSAL::isa ($doc, 'Message::IF::Document');
24     }
25 wakaba 1.2
26 wakaba 1.3 {
27     ok $dom->can ('create_document_type') ? 1 : 0, 1, "can create_document_type";
28 wakaba 1.5 my $doc = $dom->create_document_type ('dt');
29 wakaba 1.3 ok UNIVERSAL::isa ($doc, 'Message::IF::DocumentType');
30     }
31 wakaba 1.2
32 wakaba 1.1 ok $dom->can ('no_such_method') ? 1 : 0, 0;
33     my $something_called = 0;
34     eval {
35     $dom->no_such_method;
36     $something_called = 1;
37     };
38     ok $something_called, 0;
39    
40 wakaba 1.4 require Message::DOM::DOMImplementationRegistry;
41     F: for my $features (
42     {Core => '1.0'}, {XML => '1.0'}, {Core => '1.0', XML => '1.0'},
43     {Core => '2.0'}, {XML => '2.0'}, {Core => '2.0', XML => '2.0'},
44     {Core => '3.0'}, {XML => '3.0'}, {Core => '3.0', XML => '3.0'},
45     {XMLVersion => '1.0'}, {XMLVersion => '1.1'},
46 wakaba 1.6 {Traversal => '2.0'}, {Traversal => ''},
47 wakaba 1.4 ) {
48     my $list = $Message::DOM::DOMImplementationRegistry
49     ->get_dom_implementation_list ($features);
50     for my $impl (@$list) {
51     if ($impl->isa ('Message::DOM::DOMImplementation')) {
52     ok 1, 1, 'features: '. join ',', %$features;
53     next F;
54     }
55     }
56     } # F
57    
58     =head1 LICENSE
59    
60     Copyright 2007 Wakaba <w@suika.fam.cx>
61    
62     This program is free software; you can redistribute it and/or
63     modify it under the same terms as Perl itself.
64    
65     =cut
66    
67 wakaba 1.6 ## $Date: 2007/07/07 12:26:23 $

admin@suikawiki.org
ViewVC Help
Powered by ViewVC 1.1.24