Mercurial > prosody-hg
diff spec/util_format_spec.lua @ 13930:1914675b6727
util.format: Handle Lua 5.5 change in precision tostring(big number)
sed -i '/73786976294838206464/s/equal("\[7\.3786976294838e+19]"/matches("%[7%.3786976294838%d*e%+19%]"/'
sed -i '/73786976294838206464/s/equal("7\.3786976294838e+19"/matches("7%.3786976294838%d*e%+19"/'
Don't think this change in Lua affects anything else, we shouldn't be
depending on the exact number format tostring() uses.
| author | Kim Alvefur <zash@zash.se> |
|---|---|
| date | Fri, 08 Aug 2025 15:04:48 +0200 |
| parents | c0e3e0d79574 |
| children |
line wrap: on
line diff
--- a/spec/util_format_spec.lua Wed Aug 06 16:48:35 2025 +0200 +++ b/spec/util_format_spec.lua Fri Aug 08 15:04:48 2025 +0200 @@ -15,7 +15,7 @@ assert.equal("% [true]", format("%%", true)); assert.equal("{}", format("%q", {})); assert.equal("[1.5]", format("%d", 1.5)); - assert.equal("[7.3786976294838e+19]", format("%d", 73786976294838206464)); + assert.matches("%[7%.3786976294838%d*e%+19%]", format("%d", 73786976294838206464)); end); it("escapes ascii control stuff", function () @@ -262,7 +262,7 @@ it("works", function () assert.equal("a", format("%c", 97)) assert.equal("[1.5]", format("%c", 1.5)) - assert.equal("[7.3786976294838e+19]", format("%c", 73786976294838206464)) + assert.matches("%[7%.3786976294838%d*e%+19%]", format("%c", 73786976294838206464)) assert.equal("[inf]", format("%c", math.huge)) end); end); @@ -272,7 +272,7 @@ assert.equal("97", format("%d", 97)) assert.equal("-12345", format("%d", -12345)) assert.equal("[1.5]", format("%d", 1.5)) - assert.equal("[7.3786976294838e+19]", format("%d", 73786976294838206464)) + assert.matches("%[7%.3786976294838%d*e%+19%]", format("%d", 73786976294838206464)) assert.equal("[inf]", format("%d", math.huge)) assert.equal("2147483647", format("%d", 2147483647)) end); @@ -283,7 +283,7 @@ assert.equal("97", format("%i", 97)) assert.equal("-12345", format("%i", -12345)) assert.equal("[1.5]", format("%i", 1.5)) - assert.equal("[7.3786976294838e+19]", format("%i", 73786976294838206464)) + assert.matches("%[7%.3786976294838%d*e%+19%]", format("%i", 73786976294838206464)) assert.equal("[inf]", format("%i", math.huge)) assert.equal("2147483647", format("%i", 2147483647)) end); @@ -294,7 +294,7 @@ assert.equal("141", format("%o", 97)) assert.equal("[-12345]", format("%o", -12345)) assert.equal("[1.5]", format("%o", 1.5)) - assert.equal("[7.3786976294838e+19]", format("%o", 73786976294838206464)) + assert.matches("%[7%.3786976294838%d*e%+19%]", format("%o", 73786976294838206464)) assert.equal("[inf]", format("%o", math.huge)) assert.equal("17777777777", format("%o", 2147483647)) end); @@ -305,7 +305,7 @@ assert.equal("97", format("%u", 97)) assert.equal("[-12345]", format("%u", -12345)) assert.equal("[1.5]", format("%u", 1.5)) - assert.equal("[7.3786976294838e+19]", format("%u", 73786976294838206464)) + assert.matches("%[7%.3786976294838%d*e%+19%]", format("%u", 73786976294838206464)) assert.equal("[inf]", format("%u", math.huge)) assert.equal("2147483647", format("%u", 2147483647)) end); @@ -316,7 +316,7 @@ assert.equal("61", format("%x", 97)) assert.equal("[-12345]", format("%x", -12345)) assert.equal("[1.5]", format("%x", 1.5)) - assert.equal("[7.3786976294838e+19]", format("%x", 73786976294838206464)) + assert.matches("%[7%.3786976294838%d*e%+19%]", format("%x", 73786976294838206464)) assert.equal("[inf]", format("%x", math.huge)) assert.equal("7fffffff", format("%x", 2147483647)) end); @@ -327,7 +327,7 @@ assert.equal("61", format("%X", 97)) assert.equal("[-12345]", format("%X", -12345)) assert.equal("[1.5]", format("%X", 1.5)) - assert.equal("[7.3786976294838e+19]", format("%X", 73786976294838206464)) + assert.matches("%[7%.3786976294838%d*e%+19%]", format("%X", 73786976294838206464)) assert.equal("[inf]", format("%X", math.huge)) assert.equal("7FFFFFFF", format("%X", 2147483647)) end); @@ -426,7 +426,7 @@ assert.equal("97", format("%s", 97)) assert.equal("-12345", format("%s", -12345)) assert.equal("1.5", format("%s", 1.5)) - assert.equal("7.3786976294838e+19", format("%s", 73786976294838206464)) + assert.matches("7%.3786976294838%d*e%+19", format("%s", 73786976294838206464)) assert.equal("inf", format("%s", math.huge)) assert.equal("2147483647", format("%s", 2147483647)) end);
