/[suikacvs]/messaging/manakai/lib/Message/Util/ManakaiNodeTest.dis
Suika

Contents of /messaging/manakai/lib/Message/Util/ManakaiNodeTest.dis

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.1 - (hide annotations) (download)
Mon Jan 23 12:43:35 2006 UTC (19 years, 5 months ago) by wakaba
Branch: MAIN
++ manakai/t/ChangeLog	23 Jan 2006 12:43:00 -0000
2006-01-23  Wakaba  <wakaba@suika.fam.cx>

	* Makefile: |util-mntest.t| added.

++ manakai/lib/Message/Util/ChangeLog	23 Jan 2006 12:42:01 -0000
2006-01-23  Wakaba  <wakaba@suika.fam.cx>

	* ManakaiNodeTest.dis: New module.

	* Makefile: |ManakaiNodeTest.dis| added.

++ manakai/lib/Message/DOM/ChangeLog	23 Jan 2006 12:41:27 -0000
	* DOMCore.dis (NO_NAMED_NODE_ERR, NO_NAMED_NODE_NS_ERR,
	INUSE_DEFINITION_ERR, NO_NS_NAMEDNODEMAP_ERR): New error subtypes.

	* DOMMain.dis (ensureXMLName): Checks definesness of |$XMLVERSION|
	to avoid uninitialized value warning.

	* Tree.dis (ManakaiDOMElementTypeDefMap, ManakaiDOMAttrDefMap): New
	classes (work in progress).

	* XDoctype.dis (elementTypes, attributeDefinitions): New attributes.

2006-01-22  Wakaba  <wakaba@suika.fam.cx>

++ manakai/lib/manakai/ChangeLog	22 Jan 2006 07:12:00 -0000
2006-01-22  Wakaba  <wakaba@suika.fam.cx>

	* mndebug.pl: New script.

1 wakaba 1.1 Module:
2     @QName: Util|ManakaiNodeTest
3     @FullName:
4     @@lang:en
5     @@@:
6     <Module::Util|ManakaiNode> Test Module
7    
8     @Namespace:
9     http://suika.fam.cx/~wakaba/archive/2005/manakai/Util/ManakaiNodeTest#
10    
11     @DISCore:author: DISCore|Wakaba
12     @License: license|Perl+MPL
13     @Date:
14     $Date: 2005/11/23 07:58:40 $
15    
16     @Require:
17     @@Module:
18     @@@QName: Util|ManakaiNode
19     @@@WithFor: ManakaiDOM|Perl
20    
21     @DefaultFor:
22     ManakaiDOM:Perl
23    
24     Namespace:
25     @dis:
26     http://suika.fam.cx/~wakaba/archive/2004/8/18/lang#dis--
27     @DISlib:
28     http://suika.fam.cx/~wakaba/archive/2004/dis/
29     @kwd:
30     http://suika.fam.cx/~wakaba/archive/2005/rfc2119/
31     @lang:
32     http://suika.fam.cx/~wakaba/archive/2004/8/18/lang#
33     @license:
34     http://suika.fam.cx/~wakaba/archive/2004/8/18/license#
35     @ManakaiDOM:
36     http://suika.fam.cx/~wakaba/archive/2004/8/18/manakai-dom#
37     @mn:
38     http://suika.fam.cx/~wakaba/archive/2005/manakai/Util/ManakaiNode#
39     @mnt:
40     http://suika.fam.cx/~wakaba/archive/2005/manakai/Util/ManakaiNodeTest#
41     @rdf:
42     http://www.w3.org/1999/02/22-rdf-syntax-ns#
43     @rdfs:
44     http://www.w3.org/2000/01/rdf-schema#
45     @test:
46     http://suika.fam.cx/~wakaba/archive/2004/dis/Test#
47     @Util:
48     http://suika.fam.cx/~wakaba/archive/2005/manakai/Util/
49    
50     ElementTypeBinding:
51     @Name: ClsDef
52     @ElementType:
53     dis:ResourceDef
54     @ShadowContent:
55     @@rdf:type:
56     @@@@:
57     dis:MultipleResource
58     @@@ForCheck: !ManakaiDOM|ForClass !ManakaiDOM|ForIF
59     @@resourceFor: ManakaiDOM|ForClass
60     @@rdf:type:
61     @@@@: DISLang|Class
62     @@@ForCheck: ManakaiDOM|ForClass
63     @@ForCheck: ManakaiDOM|Perl
64    
65     ElementTypeBinding:
66     @Name: IntMethod
67     @ElementType:
68     dis:ResourceDef
69     @ShadowContent:
70     @@rdf:type:
71     DISLang:Method
72     @@ManakaiDOM:isForInternal:1
73    
74     ElementTypeBinding:
75     @Name: Method
76     @ElementType:
77     dis:ResourceDef
78     @ShadowContent:
79     @@rdf:type:
80     DISLang:Method
81    
82     ElementTypeBinding:
83     @Name: Return
84     @ElementType:
85     dis:ResourceDef
86     @ShadowContent:
87     @@rdf:type:
88     DISLang:MethodReturn
89    
90     ElementTypeBinding:
91     @Name: Param
92     @ElementType:
93     dis:ResourceDef
94     @ShadowContent:
95     @@rdf:type:
96     DISLang:MethodParameter
97    
98     ElementTypeBinding:
99     @Name: PerlDef
100     @ElementType:
101     dis:Def
102     @ShadowContent:
103     @@ContentType:
104     lang:Perl
105    
106     ElementTypeBinding:
107     @Name: enDesc
108     @ElementType:
109     dis:Description
110     @ShadowContent:
111     @@lang:en
112    
113     ElementTypeBinding:
114     @Name: Test
115     @ElementType:
116     dis:ResourceDef
117     @ShadowContent:
118     @@rdf:type: test|StandaloneTest
119    
120     ElementTypeBinding:
121     @Name: ClsQName
122     @ElementType:
123     dis:QName
124     @ShadowContent:
125     @@ForCheck: ManakaiDOM|ForClass
126    
127     ElementTypeBinding:
128     @Name: ClsISA
129     @ElementType:
130     dis:ISA
131     @ShadowContent:
132     @@ForCheck: ManakaiDOM|ForClass
133    
134     PropDef:
135     @QName: mnt|parent
136    
137     PropDef:
138     @QName: mnt|children
139    
140     ElementTypeBinding:
141     @Name: PropDef
142     @ElementType:
143     dis:ResourceDef
144     @ShadowContent:
145     @@rdf:type: rdf|Property
146     @@For: =ManakaiDOM|all
147    
148     ClsDef:
149     @ClsQName: Node1
150    
151     @ClsISA: mn|ManakaiNodeRef
152    
153     @enDesc:
154     Simple tree pattern test.
155    
156     @IntMethod:
157     @@Name: newStem
158     @@ManakaiDOM:isStatic: 1
159     @@Return:
160     @@@Type: mn|NodeStem
161     @@@PerlDef:
162     $r = <ClassM::mn|ManakaiNodeStem.new> (<ClassName::Node1>);
163     @mn:origin0: mnt|parent
164     @mn:subnode1: mnt|children
165    
166     @IntMethod:
167     @@Name: getRef
168     @@ManakaiDOM:isStatic: 1
169     @@Param:
170     @@@Name: stem
171     @@@Type: mn|NodeStem
172     @@Return:
173     @@@Type: Node1
174     @@@PerlDef:
175     __CODE{mn|getNewReference::
176     $object => $stem,
177     $ref => $r,
178     $class => {<ClassName::Node1>},
179     }__;
180    
181     @Test:
182     @@QName: Node1.test1
183     @@PerlDef:
184     $test->id ('get.stem');
185     my $stem = <ClassM::Node1.newStem>;
186     $test->assert_isa ($stem, <IFName::mn|NodeStem>);
187     $test->assert_not_null ($stem->{<H::mn:nodeID>});
188     $test->assert_num_equals
189     (actual_value => $stem->{<H::mn:rc>},
190     expected_value => 0);
191     $test->assert_isa ($stem->{<H::mn:groveReferenceCounter>}, 'SCALAR');
192     $test->assert_num_equals
193     (actual_value => ${$stem->{<H::mn:groveReferenceCounter>}},
194     expected_value => 0);
195    
196     $test->id ('get.ref');
197     my $ref = <ClassM::Node1.getRef> ($stem);
198     $test->assert_isa ($ref, <IFName::mn|NodeRef>);
199     $test->assert_isa ($ref, <IFName::Node1>);
200     $test->assert_isa ($ref->{<H::mn:node>}, <IFName::mn|NodeStem>);
201     $test->assert_equals
202     ($ref->{<H::mn:node>}->{<H::mn:nodeID>},
203     $stem->{<H::mn:nodeID>});
204     $test->assert_num_equals
205     (actual_value => $stem->{<H::mn:rc>},
206     expected_value => 1);
207     $test->assert_isa ($stem->{<H::mn:groveReferenceCounter>}, 'SCALAR');
208     $test->assert_num_equals
209     (actual_value => ${$stem->{<H::mn:groveReferenceCounter>}},
210     expected_value => 1);
211    
212     ##Node1
213    
214     ClsDef:
215     @ClsQName: Node2
216    
217     @ClsISA: mn|ManakaiNodeRef
218    
219     @enDesc:
220     Tree + ownwerDocument pattern test.
221    
222     @IntMethod:
223     @@Name: newStem
224     @@ManakaiDOM:isStatic: 1
225     @@Return:
226     @@@Type: mn|NodeStem
227     @@@PerlDef:
228     $r = <ClassM::mn|ManakaiNodeStem.new> (<ClassName::Node2>);
229     @mn:origin0: mnt|parent
230     @mn:subnode1: mnt|children
231     @mn:xrefnode0: mnt|owner
232    
233     @IntMethod:
234     @@Name: getRef
235     @@ManakaiDOM:isStatic: 1
236     @@Param:
237     @@@Name: stem
238     @@@Type: mn|NodeStem
239     @@Return:
240     @@@Type: Node2
241     @@@PerlDef:
242     __CODE{mn|getNewReference::
243     $object => $stem,
244     $ref => $r,
245     $class => {<ClassName::Node2>},
246     }__;
247     ##Node2
248    
249     ClsDef:
250     @ClsQName: Doc2
251    
252     @ClsISA: Node2
253    
254     @IntMethod:
255     @@Name: newStem
256     @@ManakaiDOM:isStatic: 1
257     @@Return:
258     @@@Type: mn|NodeStem
259     @@@PerlDef:
260     $r = <ClassM::mn|ManakaiNodeStem.new> (<ClassName::Doc2>);
261    
262     @IntMethod:
263     @@Name: getRef
264     @@ManakaiDOM:isStatic: 1
265     @@Param:
266     @@@Name: stem
267     @@@Type: mn|NodeStem
268     @@Return:
269     @@@Type: Doc2
270     @@@PerlDef:
271     __CODE{mn|getNewReference::
272     $object => $stem,
273     $ref => $r,
274     $class => {<ClassName::Doc2>},
275     }__;
276    
277     @IntMethod:
278     @@Name: newNodeStem
279     @@Return:
280     @@@Type: mn|NodeStem
281     @@@PerlDef:
282     $r = $self->{<H::mn:node>}-><M::mn|NodeStem.newNode> (<IFName::Node2>);
283     @@Test:
284     @@@QName: Doc2.newNodeStem.test
285     @@@PerlDef:
286     $test->id ('new.doc.stem');
287     my $stem = <ClassM::Doc2.newStem>;
288     $test->assert_isa ($stem, <IFName::mn|NodeStem>);
289     my $doc_tid = $stem->{<H::mn:treeID>};
290     my $doc = <ClassM::Doc2.getRef> ($stem);
291    
292     $test->id ('new.node.stem');
293     my $nstem = $doc-><M::Doc2.newNodeStem>;
294     $test->assert_isa ($nstem, <IFName::mn|NodeStem>);
295     my $node_tid = $nstem->{<H::mn:treeID>};
296    
297     $test->id ('doc.node.tid.equals');
298     $test->assert_equals ($$doc_tid, $$node_tid);
299    
300     @Method:
301     @@Name: createNode
302     @@Return:
303     @@@Type: Node2
304     @@@PerlDef:
305     my $stem = <ClassM::Doc2.newStem>;
306     __CODE{mn:setXRefNode::
307     $referrer => $stem,
308     $propName => {<H::mnt|owner>},
309     $referent => {$self->{<H::mn:node>}},
310     }__;
311     $r = <ClassM::Node2.getRef> ($stem);
312     @@Test:
313     @@@QName: Doc2.createNode.test
314     @@@PerlDef:
315     $test->id ('new.doc');
316     my $doc_stem = <ClassM::Doc2.newStem>;
317     my $doc = <ClassM::Doc2.getRef> ($doc_stem);
318     $test->assert_isa ($doc, <ClassName::Doc2>);
319     $test->assert_num_equals
320     (actual_value => $doc_stem->{<H::mn:rc>},
321     expected_value => 1);
322     $test->assert_num_equals
323     (actual_value => ${$doc_stem->{<H::mn:groveReferenceCounter>}},
324     expected_value => 1);
325     my $doc_tid = $doc_stem->{<H::mn:treeID>};
326    
327     $test->id ('new.node');
328     my $node = $doc-><M::Doc2.createNode>;
329     $test->assert_isa ($node, <ClassName::Node2>);
330     my $node_stem = $node->{<H::mn:node>};
331     $test->assert_isa ($node_stem, <IFName::mn|NodeStem>);
332     $test->assert_num_equals
333     (actual_value => $node_stem->{<H::mn:rc>},
334     expected_value => 1);
335     $test->assert_num_equals
336     (actual_value => ${$node_stem->{<H::mn:groveReferenceCounter>}},
337     expected_value => 1);
338     my $node_tid = $node_stem->{<H::mn:treeID>};
339    
340     $test->id ('doc.node.diff.tid');
341     $test->assert_not_equals ($$doc_tid, $$node_tid);
342    
343     $test->id ('doc.rc');
344     $test->assert_num_equals
345     (actual_value => $doc_stem->{<H::mn:rc>},
346     expected_value => 2);
347     $test->assert_num_equals
348     (actual_value => ${$doc_stem->{<H::mn:groveReferenceCounter>}},
349     expected_value => 2);
350    
351     $test->id ('node.owner');
352     $test->assert_equals ($node_stem->{<H::mnt|owner>}, $doc_stem);
353    
354     $test->id ('doc.destroy');
355     undef $doc;
356     $test->assert_num_equals
357     (actual_value => $doc_stem->{<H::mn:rc>},
358     expected_value => 1);
359     $test->assert_num_equals
360     (actual_value => ${$doc_stem->{<H::mn:groveReferenceCounter>}},
361     expected_value => 1);
362     ##Doc2
363    
364     PropDef:
365     @QName: mnt|owner

admin@suikawiki.org
ViewVC Help
Powered by ViewVC 1.1.24