1 | var t = require(__dirname)
|
2 |
|
3 | , xmls =
|
4 | [ "<parent xmlns:a='http://ATTRIBUTE' a:attr='value' />"
|
5 | , "<parent a:attr='value' xmlns:a='http://ATTRIBUTE' />" ]
|
6 |
|
7 | , ex1 =
|
8 | [ [ "opennamespace"
|
9 | , { prefix: "a"
|
10 | , uri: "http://ATTRIBUTE"
|
11 | }
|
12 | ]
|
13 | , [ "attribute"
|
14 | , { name: "xmlns:a"
|
15 | , value: "http://ATTRIBUTE"
|
16 | , prefix: "xmlns"
|
17 | , local: "a"
|
18 | , uri: "http://www.w3.org/2000/xmlns/"
|
19 | }
|
20 | ]
|
21 | , [ "attribute"
|
22 | , { name: "a:attr"
|
23 | , local: "attr"
|
24 | , prefix: "a"
|
25 | , uri: "http://ATTRIBUTE"
|
26 | , value: "value"
|
27 | }
|
28 | ]
|
29 | , [ "opentag"
|
30 | , { name: "parent"
|
31 | , uri: ""
|
32 | , prefix: ""
|
33 | , local: "parent"
|
34 | , attributes:
|
35 | { "a:attr":
|
36 | { name: "a:attr"
|
37 | , local: "attr"
|
38 | , prefix: "a"
|
39 | , uri: "http://ATTRIBUTE"
|
40 | , value: "value"
|
41 | }
|
42 | , "xmlns:a":
|
43 | { name: "xmlns:a"
|
44 | , local: "a"
|
45 | , prefix: "xmlns"
|
46 | , uri: "http://www.w3.org/2000/xmlns/"
|
47 | , value: "http://ATTRIBUTE"
|
48 | }
|
49 | }
|
50 | , ns: {"a": "http://ATTRIBUTE"}
|
51 | }
|
52 | ]
|
53 | , ["closetag", "parent"]
|
54 | , ["closenamespace", { prefix: "a", uri: "http://ATTRIBUTE" }]
|
55 | ]
|
56 |
|
57 |
|
58 | , ex2 = [ex1[0], ex1[2], ex1[1]].concat(ex1.slice(3))
|
59 | , expected = [ex1, ex2]
|
60 |
|
61 | xmls.forEach(function (x, i) {
|
62 | t.test({ xml: x
|
63 | , expect: expected[i]
|
64 | , strict: true
|
65 | , opt: { xmlns: true }
|
66 | })
|
67 | })
|