File

spec/util_xml_spec.lua @ 11771:4c0802b52673

mod_bosh,mod_websocket: Make into global-shared modules (...again) Global modules aren't quite considered loaded onto hosts, which causes confusion in some cases. They are also reported in the log as being served on http://*:5280/foo which is also a bit confusing, and can't be clicked. Global modules also have to have their paths configured in the global section, which could be confusing and unexpected. This global+shared method should be the best of both worlds.
author Kim Alvefur <zash@zash.se>
date Mon, 21 Jun 2021 22:50:23 +0200
parent 8236:4878e4159e12
child 12180:53e0ae770917
line wrap: on
line source


local xml = require "util.xml";

describe("util.xml", function()
	describe("#parse()", function()
		it("should work", function()
			local x =
[[<x xmlns:a="b">
	<y xmlns:a="c"> <!-- this overwrites 'a' -->
	    <a:z/>
	</y>
	<a:z/> <!-- prefix 'a' is nil here, but should be 'b' -->
</x>
]]
			local stanza = xml.parse(x);
			assert.are.equal(stanza.tags[2].attr.xmlns, "b");
			assert.are.equal(stanza.tags[2].namespaces["a"], "b");
		end);
	end);
end);