author | Kim Alvefur <zash@zash.se> |
Tue, 05 Apr 2022 19:49:18 +0200 | |
changeset 12457 | 1ec4a3a61cf7 |
parent 9024 | 548ba4090012 |
permissions | -rw-r--r-- |
8239
4878e4159e12
Port tests to the `busted` test runner
Waqas Hussain <waqas20@gmail.com>
parents:
diff
changeset
|
1 |
|
4878e4159e12
Port tests to the `busted` test runner
Waqas Hussain <waqas20@gmail.com>
parents:
diff
changeset
|
2 |
local xmppstream = require "util.xmppstream"; |
4878e4159e12
Port tests to the `busted` test runner
Waqas Hussain <waqas20@gmail.com>
parents:
diff
changeset
|
3 |
|
4878e4159e12
Port tests to the `busted` test runner
Waqas Hussain <waqas20@gmail.com>
parents:
diff
changeset
|
4 |
describe("util.xmppstream", function() |
9024
548ba4090012
util.xmppstream: Add tests for various XML features forbidden by the RFC
Matthew Wild <mwild1@gmail.com>
parents:
8239
diff
changeset
|
5 |
local function test(xml, expect_success, ex) |
548ba4090012
util.xmppstream: Add tests for various XML features forbidden by the RFC
Matthew Wild <mwild1@gmail.com>
parents:
8239
diff
changeset
|
6 |
local stanzas = {}; |
548ba4090012
util.xmppstream: Add tests for various XML features forbidden by the RFC
Matthew Wild <mwild1@gmail.com>
parents:
8239
diff
changeset
|
7 |
local session = { notopen = true }; |
548ba4090012
util.xmppstream: Add tests for various XML features forbidden by the RFC
Matthew Wild <mwild1@gmail.com>
parents:
8239
diff
changeset
|
8 |
local callbacks = { |
548ba4090012
util.xmppstream: Add tests for various XML features forbidden by the RFC
Matthew Wild <mwild1@gmail.com>
parents:
8239
diff
changeset
|
9 |
stream_ns = "streamns"; |
548ba4090012
util.xmppstream: Add tests for various XML features forbidden by the RFC
Matthew Wild <mwild1@gmail.com>
parents:
8239
diff
changeset
|
10 |
stream_tag = "stream"; |
548ba4090012
util.xmppstream: Add tests for various XML features forbidden by the RFC
Matthew Wild <mwild1@gmail.com>
parents:
8239
diff
changeset
|
11 |
default_ns = "stanzans"; |
548ba4090012
util.xmppstream: Add tests for various XML features forbidden by the RFC
Matthew Wild <mwild1@gmail.com>
parents:
8239
diff
changeset
|
12 |
streamopened = function (_session) |
548ba4090012
util.xmppstream: Add tests for various XML features forbidden by the RFC
Matthew Wild <mwild1@gmail.com>
parents:
8239
diff
changeset
|
13 |
assert.are.equal(session, _session); |
548ba4090012
util.xmppstream: Add tests for various XML features forbidden by the RFC
Matthew Wild <mwild1@gmail.com>
parents:
8239
diff
changeset
|
14 |
assert.are.equal(session.notopen, true); |
548ba4090012
util.xmppstream: Add tests for various XML features forbidden by the RFC
Matthew Wild <mwild1@gmail.com>
parents:
8239
diff
changeset
|
15 |
_session.notopen = nil; |
548ba4090012
util.xmppstream: Add tests for various XML features forbidden by the RFC
Matthew Wild <mwild1@gmail.com>
parents:
8239
diff
changeset
|
16 |
return true; |
548ba4090012
util.xmppstream: Add tests for various XML features forbidden by the RFC
Matthew Wild <mwild1@gmail.com>
parents:
8239
diff
changeset
|
17 |
end; |
548ba4090012
util.xmppstream: Add tests for various XML features forbidden by the RFC
Matthew Wild <mwild1@gmail.com>
parents:
8239
diff
changeset
|
18 |
handlestanza = function (_session, stanza) |
548ba4090012
util.xmppstream: Add tests for various XML features forbidden by the RFC
Matthew Wild <mwild1@gmail.com>
parents:
8239
diff
changeset
|
19 |
assert.are.equal(session, _session); |
548ba4090012
util.xmppstream: Add tests for various XML features forbidden by the RFC
Matthew Wild <mwild1@gmail.com>
parents:
8239
diff
changeset
|
20 |
assert.are.equal(_session.notopen, nil); |
548ba4090012
util.xmppstream: Add tests for various XML features forbidden by the RFC
Matthew Wild <mwild1@gmail.com>
parents:
8239
diff
changeset
|
21 |
table.insert(stanzas, stanza); |
548ba4090012
util.xmppstream: Add tests for various XML features forbidden by the RFC
Matthew Wild <mwild1@gmail.com>
parents:
8239
diff
changeset
|
22 |
end; |
548ba4090012
util.xmppstream: Add tests for various XML features forbidden by the RFC
Matthew Wild <mwild1@gmail.com>
parents:
8239
diff
changeset
|
23 |
streamclosed = function (_session) |
548ba4090012
util.xmppstream: Add tests for various XML features forbidden by the RFC
Matthew Wild <mwild1@gmail.com>
parents:
8239
diff
changeset
|
24 |
assert.are.equal(session, _session); |
548ba4090012
util.xmppstream: Add tests for various XML features forbidden by the RFC
Matthew Wild <mwild1@gmail.com>
parents:
8239
diff
changeset
|
25 |
assert.are.equal(_session.notopen, nil); |
548ba4090012
util.xmppstream: Add tests for various XML features forbidden by the RFC
Matthew Wild <mwild1@gmail.com>
parents:
8239
diff
changeset
|
26 |
_session.notopen = nil; |
548ba4090012
util.xmppstream: Add tests for various XML features forbidden by the RFC
Matthew Wild <mwild1@gmail.com>
parents:
8239
diff
changeset
|
27 |
end; |
548ba4090012
util.xmppstream: Add tests for various XML features forbidden by the RFC
Matthew Wild <mwild1@gmail.com>
parents:
8239
diff
changeset
|
28 |
} |
548ba4090012
util.xmppstream: Add tests for various XML features forbidden by the RFC
Matthew Wild <mwild1@gmail.com>
parents:
8239
diff
changeset
|
29 |
if type(ex) == "table" then |
548ba4090012
util.xmppstream: Add tests for various XML features forbidden by the RFC
Matthew Wild <mwild1@gmail.com>
parents:
8239
diff
changeset
|
30 |
for k, v in pairs(ex) do |
548ba4090012
util.xmppstream: Add tests for various XML features forbidden by the RFC
Matthew Wild <mwild1@gmail.com>
parents:
8239
diff
changeset
|
31 |
if k ~= "_size_limit" then |
548ba4090012
util.xmppstream: Add tests for various XML features forbidden by the RFC
Matthew Wild <mwild1@gmail.com>
parents:
8239
diff
changeset
|
32 |
callbacks[k] = v; |
548ba4090012
util.xmppstream: Add tests for various XML features forbidden by the RFC
Matthew Wild <mwild1@gmail.com>
parents:
8239
diff
changeset
|
33 |
end |
548ba4090012
util.xmppstream: Add tests for various XML features forbidden by the RFC
Matthew Wild <mwild1@gmail.com>
parents:
8239
diff
changeset
|
34 |
end |
548ba4090012
util.xmppstream: Add tests for various XML features forbidden by the RFC
Matthew Wild <mwild1@gmail.com>
parents:
8239
diff
changeset
|
35 |
end |
548ba4090012
util.xmppstream: Add tests for various XML features forbidden by the RFC
Matthew Wild <mwild1@gmail.com>
parents:
8239
diff
changeset
|
36 |
local stream = xmppstream.new(session, callbacks, ex and ex._size_limit or nil); |
548ba4090012
util.xmppstream: Add tests for various XML features forbidden by the RFC
Matthew Wild <mwild1@gmail.com>
parents:
8239
diff
changeset
|
37 |
local ok, err = pcall(function () |
548ba4090012
util.xmppstream: Add tests for various XML features forbidden by the RFC
Matthew Wild <mwild1@gmail.com>
parents:
8239
diff
changeset
|
38 |
assert(stream:feed(xml)); |
548ba4090012
util.xmppstream: Add tests for various XML features forbidden by the RFC
Matthew Wild <mwild1@gmail.com>
parents:
8239
diff
changeset
|
39 |
end); |
548ba4090012
util.xmppstream: Add tests for various XML features forbidden by the RFC
Matthew Wild <mwild1@gmail.com>
parents:
8239
diff
changeset
|
40 |
|
548ba4090012
util.xmppstream: Add tests for various XML features forbidden by the RFC
Matthew Wild <mwild1@gmail.com>
parents:
8239
diff
changeset
|
41 |
if ok and type(expect_success) == "function" then |
548ba4090012
util.xmppstream: Add tests for various XML features forbidden by the RFC
Matthew Wild <mwild1@gmail.com>
parents:
8239
diff
changeset
|
42 |
expect_success(stanzas); |
548ba4090012
util.xmppstream: Add tests for various XML features forbidden by the RFC
Matthew Wild <mwild1@gmail.com>
parents:
8239
diff
changeset
|
43 |
end |
548ba4090012
util.xmppstream: Add tests for various XML features forbidden by the RFC
Matthew Wild <mwild1@gmail.com>
parents:
8239
diff
changeset
|
44 |
assert.are.equal(not not ok, not not expect_success, "Expected "..(expect_success and ("success ("..tostring(err)..")") or "failure")); |
548ba4090012
util.xmppstream: Add tests for various XML features forbidden by the RFC
Matthew Wild <mwild1@gmail.com>
parents:
8239
diff
changeset
|
45 |
end |
548ba4090012
util.xmppstream: Add tests for various XML features forbidden by the RFC
Matthew Wild <mwild1@gmail.com>
parents:
8239
diff
changeset
|
46 |
|
548ba4090012
util.xmppstream: Add tests for various XML features forbidden by the RFC
Matthew Wild <mwild1@gmail.com>
parents:
8239
diff
changeset
|
47 |
local function test_stanza(stanza, expect_success, ex) |
548ba4090012
util.xmppstream: Add tests for various XML features forbidden by the RFC
Matthew Wild <mwild1@gmail.com>
parents:
8239
diff
changeset
|
48 |
return test([[<stream:stream xmlns:stream="streamns" xmlns="stanzans">]]..stanza, expect_success, ex); |
548ba4090012
util.xmppstream: Add tests for various XML features forbidden by the RFC
Matthew Wild <mwild1@gmail.com>
parents:
8239
diff
changeset
|
49 |
end |
548ba4090012
util.xmppstream: Add tests for various XML features forbidden by the RFC
Matthew Wild <mwild1@gmail.com>
parents:
8239
diff
changeset
|
50 |
|
8239
4878e4159e12
Port tests to the `busted` test runner
Waqas Hussain <waqas20@gmail.com>
parents:
diff
changeset
|
51 |
describe("#new()", function() |
4878e4159e12
Port tests to the `busted` test runner
Waqas Hussain <waqas20@gmail.com>
parents:
diff
changeset
|
52 |
it("should work", function() |
4878e4159e12
Port tests to the `busted` test runner
Waqas Hussain <waqas20@gmail.com>
parents:
diff
changeset
|
53 |
test([[<stream:stream xmlns:stream="streamns"/>]], true); |
4878e4159e12
Port tests to the `busted` test runner
Waqas Hussain <waqas20@gmail.com>
parents:
diff
changeset
|
54 |
test([[<stream xmlns="streamns"/>]], true); |
4878e4159e12
Port tests to the `busted` test runner
Waqas Hussain <waqas20@gmail.com>
parents:
diff
changeset
|
55 |
|
9024
548ba4090012
util.xmppstream: Add tests for various XML features forbidden by the RFC
Matthew Wild <mwild1@gmail.com>
parents:
8239
diff
changeset
|
56 |
-- Incorrect stream tag name should be rejected |
8239
4878e4159e12
Port tests to the `busted` test runner
Waqas Hussain <waqas20@gmail.com>
parents:
diff
changeset
|
57 |
test([[<stream1 xmlns="streamns"/>]], false); |
9024
548ba4090012
util.xmppstream: Add tests for various XML features forbidden by the RFC
Matthew Wild <mwild1@gmail.com>
parents:
8239
diff
changeset
|
58 |
-- Incorrect stream namespace should be rejected |
8239
4878e4159e12
Port tests to the `busted` test runner
Waqas Hussain <waqas20@gmail.com>
parents:
diff
changeset
|
59 |
test([[<stream xmlns="streamns1"/>]], false); |
9024
548ba4090012
util.xmppstream: Add tests for various XML features forbidden by the RFC
Matthew Wild <mwild1@gmail.com>
parents:
8239
diff
changeset
|
60 |
-- Invalid XML should be rejected |
8239
4878e4159e12
Port tests to the `busted` test runner
Waqas Hussain <waqas20@gmail.com>
parents:
diff
changeset
|
61 |
test("<>", false); |
4878e4159e12
Port tests to the `busted` test runner
Waqas Hussain <waqas20@gmail.com>
parents:
diff
changeset
|
62 |
|
4878e4159e12
Port tests to the `busted` test runner
Waqas Hussain <waqas20@gmail.com>
parents:
diff
changeset
|
63 |
test_stanza("<message/>", function (stanzas) |
4878e4159e12
Port tests to the `busted` test runner
Waqas Hussain <waqas20@gmail.com>
parents:
diff
changeset
|
64 |
assert.are.equal(#stanzas, 1); |
4878e4159e12
Port tests to the `busted` test runner
Waqas Hussain <waqas20@gmail.com>
parents:
diff
changeset
|
65 |
assert.are.equal(stanzas[1].name, "message"); |
4878e4159e12
Port tests to the `busted` test runner
Waqas Hussain <waqas20@gmail.com>
parents:
diff
changeset
|
66 |
end); |
4878e4159e12
Port tests to the `busted` test runner
Waqas Hussain <waqas20@gmail.com>
parents:
diff
changeset
|
67 |
test_stanza("< message>>>>/>\n", false); |
4878e4159e12
Port tests to the `busted` test runner
Waqas Hussain <waqas20@gmail.com>
parents:
diff
changeset
|
68 |
|
4878e4159e12
Port tests to the `busted` test runner
Waqas Hussain <waqas20@gmail.com>
parents:
diff
changeset
|
69 |
test_stanza([[<x xmlns:a="b"> |
4878e4159e12
Port tests to the `busted` test runner
Waqas Hussain <waqas20@gmail.com>
parents:
diff
changeset
|
70 |
<y xmlns:a="c"> |
4878e4159e12
Port tests to the `busted` test runner
Waqas Hussain <waqas20@gmail.com>
parents:
diff
changeset
|
71 |
<a:z/> |
4878e4159e12
Port tests to the `busted` test runner
Waqas Hussain <waqas20@gmail.com>
parents:
diff
changeset
|
72 |
</y> |
4878e4159e12
Port tests to the `busted` test runner
Waqas Hussain <waqas20@gmail.com>
parents:
diff
changeset
|
73 |
<a:z/> |
4878e4159e12
Port tests to the `busted` test runner
Waqas Hussain <waqas20@gmail.com>
parents:
diff
changeset
|
74 |
</x>]], function (stanzas) |
4878e4159e12
Port tests to the `busted` test runner
Waqas Hussain <waqas20@gmail.com>
parents:
diff
changeset
|
75 |
assert.are.equal(#stanzas, 1); |
4878e4159e12
Port tests to the `busted` test runner
Waqas Hussain <waqas20@gmail.com>
parents:
diff
changeset
|
76 |
local s = stanzas[1]; |
4878e4159e12
Port tests to the `busted` test runner
Waqas Hussain <waqas20@gmail.com>
parents:
diff
changeset
|
77 |
assert.are.equal(s.name, "x"); |
4878e4159e12
Port tests to the `busted` test runner
Waqas Hussain <waqas20@gmail.com>
parents:
diff
changeset
|
78 |
assert.are.equal(#s.tags, 2); |
4878e4159e12
Port tests to the `busted` test runner
Waqas Hussain <waqas20@gmail.com>
parents:
diff
changeset
|
79 |
|
4878e4159e12
Port tests to the `busted` test runner
Waqas Hussain <waqas20@gmail.com>
parents:
diff
changeset
|
80 |
assert.are.equal(s.tags[1].name, "y"); |
4878e4159e12
Port tests to the `busted` test runner
Waqas Hussain <waqas20@gmail.com>
parents:
diff
changeset
|
81 |
assert.are.equal(s.tags[1].attr.xmlns, nil); |
4878e4159e12
Port tests to the `busted` test runner
Waqas Hussain <waqas20@gmail.com>
parents:
diff
changeset
|
82 |
|
4878e4159e12
Port tests to the `busted` test runner
Waqas Hussain <waqas20@gmail.com>
parents:
diff
changeset
|
83 |
assert.are.equal(s.tags[1].tags[1].name, "z"); |
4878e4159e12
Port tests to the `busted` test runner
Waqas Hussain <waqas20@gmail.com>
parents:
diff
changeset
|
84 |
assert.are.equal(s.tags[1].tags[1].attr.xmlns, "c"); |
4878e4159e12
Port tests to the `busted` test runner
Waqas Hussain <waqas20@gmail.com>
parents:
diff
changeset
|
85 |
|
4878e4159e12
Port tests to the `busted` test runner
Waqas Hussain <waqas20@gmail.com>
parents:
diff
changeset
|
86 |
assert.are.equal(s.tags[2].name, "z"); |
4878e4159e12
Port tests to the `busted` test runner
Waqas Hussain <waqas20@gmail.com>
parents:
diff
changeset
|
87 |
assert.are.equal(s.tags[2].attr.xmlns, "b"); |
4878e4159e12
Port tests to the `busted` test runner
Waqas Hussain <waqas20@gmail.com>
parents:
diff
changeset
|
88 |
|
4878e4159e12
Port tests to the `busted` test runner
Waqas Hussain <waqas20@gmail.com>
parents:
diff
changeset
|
89 |
assert.are.equal(s.namespaces, nil); |
4878e4159e12
Port tests to the `busted` test runner
Waqas Hussain <waqas20@gmail.com>
parents:
diff
changeset
|
90 |
end); |
4878e4159e12
Port tests to the `busted` test runner
Waqas Hussain <waqas20@gmail.com>
parents:
diff
changeset
|
91 |
end); |
4878e4159e12
Port tests to the `busted` test runner
Waqas Hussain <waqas20@gmail.com>
parents:
diff
changeset
|
92 |
end); |
9024
548ba4090012
util.xmppstream: Add tests for various XML features forbidden by the RFC
Matthew Wild <mwild1@gmail.com>
parents:
8239
diff
changeset
|
93 |
|
548ba4090012
util.xmppstream: Add tests for various XML features forbidden by the RFC
Matthew Wild <mwild1@gmail.com>
parents:
8239
diff
changeset
|
94 |
it("should allow an XML declaration", function () |
548ba4090012
util.xmppstream: Add tests for various XML features forbidden by the RFC
Matthew Wild <mwild1@gmail.com>
parents:
8239
diff
changeset
|
95 |
test([[<?xml version="1.0" encoding="UTF-8"?><stream xmlns="streamns"/>]], true); |
548ba4090012
util.xmppstream: Add tests for various XML features forbidden by the RFC
Matthew Wild <mwild1@gmail.com>
parents:
8239
diff
changeset
|
96 |
test([[<?xml version="1.0" encoding="UTF-8" standalone="yes" ?><stream xmlns="streamns"/>]], true); |
548ba4090012
util.xmppstream: Add tests for various XML features forbidden by the RFC
Matthew Wild <mwild1@gmail.com>
parents:
8239
diff
changeset
|
97 |
test([[<?xml version="1.0" encoding="utf-8" ?><stream xmlns="streamns"/>]], true); |
548ba4090012
util.xmppstream: Add tests for various XML features forbidden by the RFC
Matthew Wild <mwild1@gmail.com>
parents:
8239
diff
changeset
|
98 |
end); |
548ba4090012
util.xmppstream: Add tests for various XML features forbidden by the RFC
Matthew Wild <mwild1@gmail.com>
parents:
8239
diff
changeset
|
99 |
|
548ba4090012
util.xmppstream: Add tests for various XML features forbidden by the RFC
Matthew Wild <mwild1@gmail.com>
parents:
8239
diff
changeset
|
100 |
it("should not accept XML versions other than 1.0", function () |
548ba4090012
util.xmppstream: Add tests for various XML features forbidden by the RFC
Matthew Wild <mwild1@gmail.com>
parents:
8239
diff
changeset
|
101 |
test([[<?xml version="1.1" encoding="utf-8" ?><stream xmlns="streamns"/>]], false); |
548ba4090012
util.xmppstream: Add tests for various XML features forbidden by the RFC
Matthew Wild <mwild1@gmail.com>
parents:
8239
diff
changeset
|
102 |
end); |
548ba4090012
util.xmppstream: Add tests for various XML features forbidden by the RFC
Matthew Wild <mwild1@gmail.com>
parents:
8239
diff
changeset
|
103 |
|
548ba4090012
util.xmppstream: Add tests for various XML features forbidden by the RFC
Matthew Wild <mwild1@gmail.com>
parents:
8239
diff
changeset
|
104 |
it("should not allow a misplaced XML declaration", function () |
548ba4090012
util.xmppstream: Add tests for various XML features forbidden by the RFC
Matthew Wild <mwild1@gmail.com>
parents:
8239
diff
changeset
|
105 |
test([[<stream xmlns="streamns"><?xml version="1.0" encoding="UTF-8"?></stream>]], false); |
548ba4090012
util.xmppstream: Add tests for various XML features forbidden by the RFC
Matthew Wild <mwild1@gmail.com>
parents:
8239
diff
changeset
|
106 |
end); |
548ba4090012
util.xmppstream: Add tests for various XML features forbidden by the RFC
Matthew Wild <mwild1@gmail.com>
parents:
8239
diff
changeset
|
107 |
|
548ba4090012
util.xmppstream: Add tests for various XML features forbidden by the RFC
Matthew Wild <mwild1@gmail.com>
parents:
8239
diff
changeset
|
108 |
describe("should forbid restricted XML:", function () |
548ba4090012
util.xmppstream: Add tests for various XML features forbidden by the RFC
Matthew Wild <mwild1@gmail.com>
parents:
8239
diff
changeset
|
109 |
it("comments", function () |
548ba4090012
util.xmppstream: Add tests for various XML features forbidden by the RFC
Matthew Wild <mwild1@gmail.com>
parents:
8239
diff
changeset
|
110 |
test_stanza("<!-- hello world -->", false); |
548ba4090012
util.xmppstream: Add tests for various XML features forbidden by the RFC
Matthew Wild <mwild1@gmail.com>
parents:
8239
diff
changeset
|
111 |
end); |
548ba4090012
util.xmppstream: Add tests for various XML features forbidden by the RFC
Matthew Wild <mwild1@gmail.com>
parents:
8239
diff
changeset
|
112 |
it("DOCTYPE", function () |
548ba4090012
util.xmppstream: Add tests for various XML features forbidden by the RFC
Matthew Wild <mwild1@gmail.com>
parents:
8239
diff
changeset
|
113 |
test([[<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE stream SYSTEM "mydtd.dtd">]], false); |
548ba4090012
util.xmppstream: Add tests for various XML features forbidden by the RFC
Matthew Wild <mwild1@gmail.com>
parents:
8239
diff
changeset
|
114 |
end); |
548ba4090012
util.xmppstream: Add tests for various XML features forbidden by the RFC
Matthew Wild <mwild1@gmail.com>
parents:
8239
diff
changeset
|
115 |
it("incorrect encoding specification", function () |
548ba4090012
util.xmppstream: Add tests for various XML features forbidden by the RFC
Matthew Wild <mwild1@gmail.com>
parents:
8239
diff
changeset
|
116 |
-- This is actually caught by the underlying XML parser |
548ba4090012
util.xmppstream: Add tests for various XML features forbidden by the RFC
Matthew Wild <mwild1@gmail.com>
parents:
8239
diff
changeset
|
117 |
test([[<?xml version="1.0" encoding="UTF-16"?><stream xmlns="streamns"/>]], false); |
548ba4090012
util.xmppstream: Add tests for various XML features forbidden by the RFC
Matthew Wild <mwild1@gmail.com>
parents:
8239
diff
changeset
|
118 |
end); |
548ba4090012
util.xmppstream: Add tests for various XML features forbidden by the RFC
Matthew Wild <mwild1@gmail.com>
parents:
8239
diff
changeset
|
119 |
it("non-UTF8 encodings: ISO-8859-1", function () |
548ba4090012
util.xmppstream: Add tests for various XML features forbidden by the RFC
Matthew Wild <mwild1@gmail.com>
parents:
8239
diff
changeset
|
120 |
test([[<?xml version="1.0" encoding="ISO-8859-1"?><stream xmlns="streamns"/>]], false); |
548ba4090012
util.xmppstream: Add tests for various XML features forbidden by the RFC
Matthew Wild <mwild1@gmail.com>
parents:
8239
diff
changeset
|
121 |
end); |
548ba4090012
util.xmppstream: Add tests for various XML features forbidden by the RFC
Matthew Wild <mwild1@gmail.com>
parents:
8239
diff
changeset
|
122 |
it("non-UTF8 encodings: UTF-16", function () |
548ba4090012
util.xmppstream: Add tests for various XML features forbidden by the RFC
Matthew Wild <mwild1@gmail.com>
parents:
8239
diff
changeset
|
123 |
-- <?xml version="1.0" encoding="UTF-16"?><stream xmlns="streamns"/> |
548ba4090012
util.xmppstream: Add tests for various XML features forbidden by the RFC
Matthew Wild <mwild1@gmail.com>
parents:
8239
diff
changeset
|
124 |
-- encoded into UTF-16 |
548ba4090012
util.xmppstream: Add tests for various XML features forbidden by the RFC
Matthew Wild <mwild1@gmail.com>
parents:
8239
diff
changeset
|
125 |
local hx = ([[fffe3c003f0078006d006c002000760065007200730069006f006e003d00 |
548ba4090012
util.xmppstream: Add tests for various XML features forbidden by the RFC
Matthew Wild <mwild1@gmail.com>
parents:
8239
diff
changeset
|
126 |
220031002e0030002200200065006e0063006f00640069006e0067003d00 |
548ba4090012
util.xmppstream: Add tests for various XML features forbidden by the RFC
Matthew Wild <mwild1@gmail.com>
parents:
8239
diff
changeset
|
127 |
22005500540046002d003100360022003f003e003c007300740072006500 |
548ba4090012
util.xmppstream: Add tests for various XML features forbidden by the RFC
Matthew Wild <mwild1@gmail.com>
parents:
8239
diff
changeset
|
128 |
61006d00200078006d006c006e0073003d00220073007400720065006100 |
548ba4090012
util.xmppstream: Add tests for various XML features forbidden by the RFC
Matthew Wild <mwild1@gmail.com>
parents:
8239
diff
changeset
|
129 |
6d006e00730022002f003e00]]):gsub("%x%x", function (c) return string.char(tonumber(c, 16)); end); |
548ba4090012
util.xmppstream: Add tests for various XML features forbidden by the RFC
Matthew Wild <mwild1@gmail.com>
parents:
8239
diff
changeset
|
130 |
test(hx, false); |
548ba4090012
util.xmppstream: Add tests for various XML features forbidden by the RFC
Matthew Wild <mwild1@gmail.com>
parents:
8239
diff
changeset
|
131 |
end); |
548ba4090012
util.xmppstream: Add tests for various XML features forbidden by the RFC
Matthew Wild <mwild1@gmail.com>
parents:
8239
diff
changeset
|
132 |
it("processing instructions", function () |
548ba4090012
util.xmppstream: Add tests for various XML features forbidden by the RFC
Matthew Wild <mwild1@gmail.com>
parents:
8239
diff
changeset
|
133 |
test([[<stream xmlns="streamns"><?xml-stylesheet type="text/xsl" href="style.xsl"?></stream>]], false); |
548ba4090012
util.xmppstream: Add tests for various XML features forbidden by the RFC
Matthew Wild <mwild1@gmail.com>
parents:
8239
diff
changeset
|
134 |
end); |
548ba4090012
util.xmppstream: Add tests for various XML features forbidden by the RFC
Matthew Wild <mwild1@gmail.com>
parents:
8239
diff
changeset
|
135 |
end); |
8239
4878e4159e12
Port tests to the `busted` test runner
Waqas Hussain <waqas20@gmail.com>
parents:
diff
changeset
|
136 |
end); |