aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRoberto Ierusalimschy <roberto@inf.puc-rio.br>2022-10-19 16:20:11 -0300
committerRoberto Ierusalimschy <roberto@inf.puc-rio.br>2022-10-19 16:20:11 -0300
commit7f12bf40c401ea465c792156be31bf4a38a7499f (patch)
tree7fcff33f24c5f3abeae4e62f2cdd371f9b5c25bf
parent26be27459b11feabed52cf40aaa76f86c7edc977 (diff)
downloadlua-7f12bf40c401ea465c792156be31bf4a38a7499f.tar.gz
lua-7f12bf40c401ea465c792156be31bf4a38a7499f.tar.bz2
lua-7f12bf40c401ea465c792156be31bf4a38a7499f.zip
Portability issue in a test for 'string.format'
-rw-r--r--testes/strings.lua9
1 files changed, 7 insertions, 2 deletions
diff --git a/testes/strings.lua b/testes/strings.lua
index 184fa651..337c2937 100644
--- a/testes/strings.lua
+++ b/testes/strings.lua
@@ -346,13 +346,18 @@ assert(string.format("%013i", -100) == "-000000000100")
346assert(string.format("%2.5d", -100) == "-00100") 346assert(string.format("%2.5d", -100) == "-00100")
347assert(string.format("%.u", 0) == "") 347assert(string.format("%.u", 0) == "")
348assert(string.format("%+#014.0f", 100) == "+000000000100.") 348assert(string.format("%+#014.0f", 100) == "+000000000100.")
349assert(string.format("% 1.0E", 100) == " 1E+02")
350assert(string.format("%-16c", 97) == "a ") 349assert(string.format("%-16c", 97) == "a ")
351assert(string.format("%+.3G", 1.5) == "+1.5") 350assert(string.format("%+.3G", 1.5) == "+1.5")
352assert(string.format("% .1g", 2^10) == " 1e+03")
353assert(string.format("%.0s", "alo") == "") 351assert(string.format("%.0s", "alo") == "")
354assert(string.format("%.s", "alo") == "") 352assert(string.format("%.s", "alo") == "")
355 353
354-- ISO C89 says that "The exponent always contains at least two digits",
355-- but unlike ISO C99 it does not ensure that it contains "only as many
356-- more digits as necessary".
357assert(string.match(string.format("% 1.0E", 100), "^ 1E%+0+2$"))
358assert(string.match(string.format("% .1g", 2^10), "^ 1e%+0+3$"))
359
360
356-- errors in format 361-- errors in format
357 362
358local function check (fmt, msg) 363local function check (fmt, msg)