Annotation of embedaddon/php/ext/dom/tests/canonicalization.phpt, revision 1.1.1.1
1.1 misho 1: --TEST--
2: Test: Canonicalization - C14N()
3: --SKIPIF--
4: <?php require_once('skipif.inc'); ?>
5: --FILE--
6: <?php
7: $xml = <<<EOXML
8: <?xml version="1.0" encoding="ISO-8859-1" ?>
9: <foo xmlns="http://www.example.com/ns/foo"
10: xmlns:fubar="http://www.example.com/ns/fubar" xmlns:test="urn::test"><contain>
11: <bar><test1 /></bar>
12: <bar><test2 /></bar>
13: <fubar:bar xmlns:fubar="http://www.example.com/ns/fubar"><test3 /></fubar:bar>
14: <fubar:bar><test4 /></fubar:bar>
15: <!-- this is a comment -->
16: </contain>
17: </foo>
18: EOXML;
19:
20: $dom = new DOMDocument();
21: $dom->loadXML($xml);
22: $doc = $dom->documentElement->firstChild;
23:
24: /* inclusive/without comments first child element of doc element is context. */
25: echo $doc->C14N()."\n\n";
26:
27: /* exclusive/without comments first child element of doc element is context. */
28: echo $doc->c14N(TRUE)."\n\n";
29:
30: /* inclusive/with comments first child element of doc element is context. */
31: echo $doc->C14N(FALSE, TRUE)."\n\n";
32:
33: /* exclusive/with comments first child element of doc element is context. */
34: echo $doc->C14N(TRUE, TRUE)."\n\n";
35:
36: /* exclusive/without comments using xpath query. */
37: echo $doc->c14N(TRUE, FALSE, array('query'=>'(//. | //@* | //namespace::*)'))."\n\n";
38:
39: /* exclusive/without comments first child element of doc element is context.
40: using xpath query with registered namespace.
41: test namespace prefix is also included. */
42: echo $doc->c14N(TRUE, FALSE,
43: array('query'=>'(//a:contain | //a:bar | .//namespace::*)',
44: 'namespaces'=>array('a'=>'http://www.example.com/ns/foo')),
45: array('test'))."\n\n";
46:
47: /* exclusive/without comments first child element of doc element is context.
48: test namespace prefix is also included */
49: echo $doc->C14N(TRUE, FALSE, NULL, array('test'));
50: ?>
51: --EXPECTF--
52:
53: <contain xmlns="http://www.example.com/ns/foo" xmlns:fubar="http://www.example.com/ns/fubar" xmlns:test="urn::test">
54: <bar><test1></test1></bar>
55: <bar><test2></test2></bar>
56: <fubar:bar><test3></test3></fubar:bar>
57: <fubar:bar><test4></test4></fubar:bar>
58:
59: </contain>
60:
61: <contain xmlns="http://www.example.com/ns/foo">
62: <bar><test1></test1></bar>
63: <bar><test2></test2></bar>
64: <fubar:bar xmlns:fubar="http://www.example.com/ns/fubar"><test3></test3></fubar:bar>
65: <fubar:bar xmlns:fubar="http://www.example.com/ns/fubar"><test4></test4></fubar:bar>
66:
67: </contain>
68:
69: <contain xmlns="http://www.example.com/ns/foo" xmlns:fubar="http://www.example.com/ns/fubar" xmlns:test="urn::test">
70: <bar><test1></test1></bar>
71: <bar><test2></test2></bar>
72: <fubar:bar><test3></test3></fubar:bar>
73: <fubar:bar><test4></test4></fubar:bar>
74: <!-- this is a comment -->
75: </contain>
76:
77: <contain xmlns="http://www.example.com/ns/foo">
78: <bar><test1></test1></bar>
79: <bar><test2></test2></bar>
80: <fubar:bar xmlns:fubar="http://www.example.com/ns/fubar"><test3></test3></fubar:bar>
81: <fubar:bar xmlns:fubar="http://www.example.com/ns/fubar"><test4></test4></fubar:bar>
82: <!-- this is a comment -->
83: </contain>
84:
85: <foo xmlns="http://www.example.com/ns/foo"><contain>
86: <bar><test1></test1></bar>
87: <bar><test2></test2></bar>
88: <fubar:bar xmlns:fubar="http://www.example.com/ns/fubar"><test3></test3></fubar:bar>
89: <fubar:bar xmlns:fubar="http://www.example.com/ns/fubar"><test4></test4></fubar:bar>
90:
91: </contain>
92: </foo>
93:
94: <contain xmlns="http://www.example.com/ns/foo" xmlns:test="urn::test"><bar></bar><bar></bar></contain>
95:
96: <contain xmlns="http://www.example.com/ns/foo" xmlns:test="urn::test">
97: <bar><test1></test1></bar>
98: <bar><test2></test2></bar>
99: <fubar:bar xmlns:fubar="http://www.example.com/ns/fubar"><test3></test3></fubar:bar>
100: <fubar:bar xmlns:fubar="http://www.example.com/ns/fubar"><test4></test4></fubar:bar>
101:
102: </contain>
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>