aboutsummaryrefslogtreecommitdiffstats
path: root/spec
diff options
context:
space:
mode:
authorKim Alvefur <zash@zash.se>2021-10-26 15:15:57 +0200
committerKim Alvefur <zash@zash.se>2021-10-26 15:15:57 +0200
commitfc677f515fd0fe5c45d54e51f5646f37e204929a (patch)
treec02eafc57e427c68964ea99d0ac24736a0c490a7 /spec
parent533ab7a4ce6c55acd164cdcea6d8a6abe3db4bca (diff)
downloadprosody-fc677f515fd0fe5c45d54e51f5646f37e204929a.tar.gz
prosody-fc677f515fd0fe5c45d54e51f5646f37e204929a.zip
util.dataforms: Coerce number values for boolean fields
Makes more sense than coercing to a string, which would always be truthy.
Diffstat (limited to 'spec')
-rw-r--r--spec/util_dataforms_spec.lua10
1 files changed, 10 insertions, 0 deletions
diff --git a/spec/util_dataforms_spec.lua b/spec/util_dataforms_spec.lua
index f796b30d..a76a9565 100644
--- a/spec/util_dataforms_spec.lua
+++ b/spec/util_dataforms_spec.lua
@@ -417,6 +417,16 @@ describe("util.dataforms", function ()
end);
end);
+ describe("number handling", function()
+ it("handles numbers as booleans", function()
+ local f = dataforms.new { { name = "boolean"; type = "boolean" } };
+ local x = f:form({ boolean = 0 });
+ assert.equal("0", x:find "field/value#");
+ x = f:form({ boolean = 1 });
+ assert.equal("1", x:find "field/value#");
+ end);
+ end)
+
describe("datatype validation", function ()
local f = dataforms.new {
{