Software /
code /
prosody
File
spec/util_xml_spec.lua @ 10654:a2bd6e85a457
mod_ping: Fix double response to internal ping
When responding to a ping from elsewhere in the same Prosody the send
function will be host_send from core.hostmanager, which does not return
anything. Tailcalling it therefore lets the iq event fall trough to
handle_unhandled_stanza in core.stanza_router, which responds with an
error. This error also goes into handle_unhandled_stanza which discards
it.
Noticed because I have a module that points out when a stanza error
reply is created without a text argument.
author | Kim Alvefur <zash@zash.se> |
---|---|
date | Fri, 21 Feb 2020 23:30:47 +0100 |
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);