spec/util_xmppstream_spec.lua
author Kim Alvefur <zash@zash.se>
Thu, 28 Mar 2024 15:26:57 +0100
changeset 13472 98806cac64c3
parent 9024 548ba4090012
permissions -rw-r--r--
MUC: Switch to official XEP-0317 namespace for Hats (including compat) (thanks nicoco)
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
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);