/[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 - (show 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 #!/usr/bin/perl
2 use strict;
3 use Test;
4 BEGIN { plan tests => 23 }
5
6 require Message::DOM::DOMImplementation;
7
8 my $dom = Message::DOM::DOMImplementation->new;
9
10 ok $dom->isa ('Message::DOM::DOMImplementation');
11 ok $dom->isa ('Message::IF::DOMImplementation');
12
13 ## AUTOLOAD test
14 {
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
20 {
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
26 {
27 ok $dom->can ('create_document_type') ? 1 : 0, 1, "can create_document_type";
28 my $doc = $dom->create_document_type ('dt');
29 ok UNIVERSAL::isa ($doc, 'Message::IF::DocumentType');
30 }
31
32 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 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 {Traversal => '2.0'}, {Traversal => ''},
47 ) {
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 ## $Date: 2007/07/07 12:26:23 $

admin@suikawiki.org
ViewVC Help
Powered by ViewVC 1.1.24