diff options
| author | Roberto Ierusalimschy <roberto@inf.puc-rio.br> | 2022-10-19 16:20:11 -0300 |
|---|---|---|
| committer | Roberto Ierusalimschy <roberto@inf.puc-rio.br> | 2022-10-19 16:20:11 -0300 |
| commit | 7f12bf40c401ea465c792156be31bf4a38a7499f (patch) | |
| tree | 7fcff33f24c5f3abeae4e62f2cdd371f9b5c25bf | |
| parent | 26be27459b11feabed52cf40aaa76f86c7edc977 (diff) | |
| download | lua-7f12bf40c401ea465c792156be31bf4a38a7499f.tar.gz lua-7f12bf40c401ea465c792156be31bf4a38a7499f.tar.bz2 lua-7f12bf40c401ea465c792156be31bf4a38a7499f.zip | |
Portability issue in a test for 'string.format'
| -rw-r--r-- | testes/strings.lua | 9 |
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") | |||
| 346 | assert(string.format("%2.5d", -100) == "-00100") | 346 | assert(string.format("%2.5d", -100) == "-00100") |
| 347 | assert(string.format("%.u", 0) == "") | 347 | assert(string.format("%.u", 0) == "") |
| 348 | assert(string.format("%+#014.0f", 100) == "+000000000100.") | 348 | assert(string.format("%+#014.0f", 100) == "+000000000100.") |
| 349 | assert(string.format("% 1.0E", 100) == " 1E+02") | ||
| 350 | assert(string.format("%-16c", 97) == "a ") | 349 | assert(string.format("%-16c", 97) == "a ") |
| 351 | assert(string.format("%+.3G", 1.5) == "+1.5") | 350 | assert(string.format("%+.3G", 1.5) == "+1.5") |
| 352 | assert(string.format("% .1g", 2^10) == " 1e+03") | ||
| 353 | assert(string.format("%.0s", "alo") == "") | 351 | assert(string.format("%.0s", "alo") == "") |
| 354 | assert(string.format("%.s", "alo") == "") | 352 | assert(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". | ||
| 357 | assert(string.match(string.format("% 1.0E", 100), "^ 1E%+0+2$")) | ||
| 358 | assert(string.match(string.format("% .1g", 2^10), "^ 1e%+0+3$")) | ||
| 359 | |||
| 360 | |||
| 356 | -- errors in format | 361 | -- errors in format |
| 357 | 362 | ||
| 358 | local function check (fmt, msg) | 363 | local function check (fmt, msg) |
