Thu, 13 Sep 2018 16:05:24 +0100
stanzacmp: Fix for {scansion:any} in top-level attributes being ignored
scansion/stanzacmp.lua | file | annotate | diff | comparison | revisions | |
spec/stanzacmp_spec.lua | file | annotate | diff | comparison | revisions |
--- a/scansion/stanzacmp.lua Wed Sep 12 11:37:55 2018 +0100 +++ b/scansion/stanzacmp.lua Thu Sep 13 16:05:24 2018 +0100 @@ -77,7 +77,7 @@ end for k, v in pairs(stanza1.attr) do - if not k:match("^scansion:") and stanza2.attr[k] ~= v then + if not k:match("^scansion:") and v ~= "{scansion:any}" and stanza2.attr[k] ~= v then return false; end end
--- a/spec/stanzacmp_spec.lua Wed Sep 12 11:37:55 2018 +0100 +++ b/spec/stanzacmp_spec.lua Thu Sep 13 16:05:24 2018 +0100 @@ -139,4 +139,16 @@ </x> </s>]]); end); + it("should match", function () + yes([[<iq type='set' id='{scansion:any}'> + <query ver='{scansion:any}' xmlns='jabber:iq:roster'> + <item xmlns='jabber:iq:roster' jid='nurse@localhost' subscription='none'/> + </query> + </iq>]], + [[<iq type='set' id='ncvDjS1d'> + <query ver='1' xmlns='jabber:iq:roster'> + <item xmlns='jabber:iq:roster' jid='nurse@localhost' subscription='none'/> + </query> + </iq>]]); + end); end);