author | Kim Alvefur <zash@zash.se> |
Tue, 15 Jun 2021 23:24:23 +0200 | |
changeset 11642 | 5f4a657136bc |
parent 10039 | 386f085820e6 |
child 11648 | fc1b8fe94d04 |
permissions | -rw-r--r-- |
8386 | 1 |
local format = require "util.format".format; |
2 |
||
3 |
describe("util.format", function() |
|
4 |
describe("#format()", function() |
|
5 |
it("should work", function() |
|
8622
b96b0141cb61
util.format: Fix tests to have expected value first
Kim Alvefur <zash@zash.se>
parents:
8386
diff
changeset
|
6 |
assert.equal("hello", format("%s", "hello")); |
b96b0141cb61
util.format: Fix tests to have expected value first
Kim Alvefur <zash@zash.se>
parents:
8386
diff
changeset
|
7 |
assert.equal("<nil>", format("%s")); |
9660
3da6cc927ee6
util.format: Tweak how nil values are handled
Kim Alvefur <zash@zash.se>
parents:
8623
diff
changeset
|
8 |
assert.equal("<nil>", format("%d")); |
3da6cc927ee6
util.format: Tweak how nil values are handled
Kim Alvefur <zash@zash.se>
parents:
8623
diff
changeset
|
9 |
assert.equal("<nil>", format("%q")); |
8623
84b73949fc30
util.format: Add test coverage for case of extra nil argument
Kim Alvefur <zash@zash.se>
parents:
8622
diff
changeset
|
10 |
assert.equal(" [<nil>]", format("", nil)); |
8622
b96b0141cb61
util.format: Fix tests to have expected value first
Kim Alvefur <zash@zash.se>
parents:
8386
diff
changeset
|
11 |
assert.equal("true", format("%s", true)); |
b96b0141cb61
util.format: Fix tests to have expected value first
Kim Alvefur <zash@zash.se>
parents:
8386
diff
changeset
|
12 |
assert.equal("[true]", format("%d", true)); |
b96b0141cb61
util.format: Fix tests to have expected value first
Kim Alvefur <zash@zash.se>
parents:
8386
diff
changeset
|
13 |
assert.equal("% [true]", format("%%", true)); |
9697
6ed0d6224d64
util.format: Serialize values for the %q format
Kim Alvefur <zash@zash.se>
parents:
9660
diff
changeset
|
14 |
assert.equal("{ }", format("%q", { })); |
10038
4fca92d60040
util.format: Handle formats expecting an integer in Lua 5.3+ (fixes #1371)
Kim Alvefur <zash@zash.se>
parents:
9697
diff
changeset
|
15 |
assert.equal("[1.5]", format("%d", 1.5)); |
10039
386f085820e6
util.format: Handle integer formats the same way on Lua versions without integer support
Kim Alvefur <zash@zash.se>
parents:
10038
diff
changeset
|
16 |
assert.equal("[7.3786976294838e+19]", format("%d", 73786976294838206464)); |
8386 | 17 |
end); |
11642
5f4a657136bc
util.format: Escape ASCII control characters in output
Kim Alvefur <zash@zash.se>
parents:
10039
diff
changeset
|
18 |
|
5f4a657136bc
util.format: Escape ASCII control characters in output
Kim Alvefur <zash@zash.se>
parents:
10039
diff
changeset
|
19 |
it("escapes ascii control stuff", function () |
5f4a657136bc
util.format: Escape ASCII control characters in output
Kim Alvefur <zash@zash.se>
parents:
10039
diff
changeset
|
20 |
assert.equal("␁", format("%s", "\1")); |
5f4a657136bc
util.format: Escape ASCII control characters in output
Kim Alvefur <zash@zash.se>
parents:
10039
diff
changeset
|
21 |
end); |
5f4a657136bc
util.format: Escape ASCII control characters in output
Kim Alvefur <zash@zash.se>
parents:
10039
diff
changeset
|
22 |
|
8386 | 23 |
end); |
24 |
end); |