Changeset

10762:4fc224c97986

util.rsm: Test that Lua 5.3 floats are not encoded with decimal point The 'max' 'count' and 'index' fields are integers and should be encoded as such on the wire. Care needs to be taken because tostring(1.0) in Lua 5.3+ returns to "1.0" while in previous Lua versions it would return "1".
author Kim Alvefur <zash@zash.se>
date Thu, 23 Apr 2020 18:17:54 +0200
parents 10761:b53193bb21cc
children 10763:e0e2ae050d65
files spec/util_rsm_spec.lua
diffstat 1 files changed, 7 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- a/spec/util_rsm_spec.lua	Thu Apr 23 18:16:36 2020 +0200
+++ b/spec/util_rsm_spec.lua	Thu Apr 23 18:17:54 2020 +0200
@@ -77,6 +77,13 @@
 			assert.same(test:get_child_text("before"), res:get_child_text("before"));
 		end);
 
+		it("handles floats", function ()
+			local r1 = rsm.generate({ max = 10.0, count = 100.0, first = { index = 1.0, "foo" } });
+			assert.equal("10", r1:get_child_text("max"));
+			assert.equal("100", r1:get_child_text("count"));
+			assert.equal("1", r1:get_child("first").attr.index);
+		end);
+
 	end);
 end);