xmlns-strict.js 3.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374
  1. require(__dirname).test
  2. ( { xml :
  3. "<root>"+
  4. "<plain attr='normal'/>"+
  5. "<ns1 xmlns='uri:default'>"+
  6. "<plain attr='normal'/>"+
  7. "</ns1>"+
  8. "<ns2 xmlns:a='uri:nsa'>"+
  9. "<plain attr='normal'/>"+
  10. "<a:ns a:attr='namespaced'/>"+
  11. "</ns2>"+
  12. "</root>"
  13. , expect :
  14. [ [ "opentag", { name: "root", prefix: "", local: "root", uri: "",
  15. attributes: {}, ns: {}, isSelfClosing: false } ]
  16. , [ "attribute", { name: "attr", value: "normal", prefix: "", local: "attr", uri: "" } ]
  17. , [ "opentag", { name: "plain", prefix: "", local: "plain", uri: "",
  18. attributes: { "attr": { name: "attr", value: "normal", uri: "", prefix: "", local: "attr", uri: "" } },
  19. ns: {}, isSelfClosing: true } ]
  20. , [ "closetag", "plain" ]
  21. , [ "opennamespace", { prefix: "", uri: "uri:default" } ]
  22. , [ "attribute", { name: "xmlns", value: "uri:default", prefix: "xmlns", local: "", uri: "http://www.w3.org/2000/xmlns/" } ]
  23. , [ "opentag", { name: "ns1", prefix: "", local: "ns1", uri: "uri:default",
  24. attributes: { "xmlns": { name: "xmlns", value: "uri:default", prefix: "xmlns", local: "", uri: "http://www.w3.org/2000/xmlns/" } },
  25. ns: { "": "uri:default" }, isSelfClosing: false } ]
  26. , [ "attribute", { name: "attr", value: "normal", prefix: "", local: "attr", uri: "" } ]
  27. , [ "opentag", { name: "plain", prefix: "", local: "plain", uri: "uri:default", ns: { '': 'uri:default' },
  28. attributes: { "attr": { name: "attr", value: "normal", prefix: "", local: "attr", uri: "" } },
  29. isSelfClosing: true } ]
  30. , [ "closetag", "plain" ]
  31. , [ "closetag", "ns1" ]
  32. , [ "closenamespace", { prefix: "", uri: "uri:default" } ]
  33. , [ "opennamespace", { prefix: "a", uri: "uri:nsa" } ]
  34. , [ "attribute", { name: "xmlns:a", value: "uri:nsa", prefix: "xmlns", local: "a", uri: "http://www.w3.org/2000/xmlns/" } ]
  35. , [ "opentag", { name: "ns2", prefix: "", local: "ns2", uri: "",
  36. attributes: { "xmlns:a": { name: "xmlns:a", value: "uri:nsa", prefix: "xmlns", local: "a", uri: "http://www.w3.org/2000/xmlns/" } },
  37. ns: { a: "uri:nsa" }, isSelfClosing: false } ]
  38. , [ "attribute", { name: "attr", value: "normal", prefix: "", local: "attr", uri: "" } ]
  39. , [ "opentag", { name: "plain", prefix: "", local: "plain", uri: "",
  40. attributes: { "attr": { name: "attr", value: "normal", prefix: "", local: "attr", uri: "" } },
  41. ns: { a: 'uri:nsa' },
  42. isSelfClosing: true } ]
  43. , [ "closetag", "plain" ]
  44. , [ "attribute", { name: "a:attr", value: "namespaced", prefix: "a", local: "attr", uri: "uri:nsa" } ]
  45. , [ "opentag", { name: "a:ns", prefix: "a", local: "ns", uri: "uri:nsa",
  46. attributes: { "a:attr": { name: "a:attr", value: "namespaced", prefix: "a", local: "attr", uri: "uri:nsa" } },
  47. ns: { a: 'uri:nsa' },
  48. isSelfClosing: true } ]
  49. , [ "closetag", "a:ns" ]
  50. , [ "closetag", "ns2" ]
  51. , [ "closenamespace", { prefix: "a", uri: "uri:nsa" } ]
  52. , [ "closetag", "root" ]
  53. ]
  54. , strict : true
  55. , opt : { xmlns: true }
  56. }
  57. )