github.com/hirochachacha/plua@v0.0.0-20170217012138-c82f520cc725/stdlib/string/testdata/format.lua (about)

     1  x = string.format("%q", 'a string with "quotes"')
     2  y = '"a string with \\"quotes\\""'
     3  
     4  assert(x == y)
     5  
     6  assert(string.format("%05d", 10) == "00010")
     7  assert(string.format("%x", 10123324) == "9a783c")
     8  
     9  assert(string.format('%q', '\\') == '"\\\\"')
    10  
    11  assert('\n' == '\n')
    12  x = string.format('%q', '\n')
    13  assert(x == '"\\\n"' or x == [["\n"]]) -- prefer to use [["\n"]] for quote
    14  
    15  assert('\x10' == "\16")
    16  assert(string.format('%q', '\x10') == '"\\016"')
    17  
    18  assert('\u{100}' == 'Ā')
    19  assert(string.format('%q', '\u{100}') == '"Ā"')
    20  
    21  assert('\u{22222}' == '\u{22222}')
    22  assert(string.format('%q','\u{22222}') == '"\u{22222}"')
    23  
    24  assert('\100' == "\100")
    25  assert(string.format('%q', '\100') == '"d"')
    26  
    27  assert('\0' == "\0")
    28  assert(string.format('%q', '\0') == '"\\000"')
    29  
    30  assert('\01' == "\01")
    31  assert(string.format('%q', '\01') == '"\\001"')
    32  
    33  assert('\014' == "\014")
    34  assert(string.format('%q', '\014') == '"\\014"')
    35  
    36  assert(tonumber(string.format("%f", 10.3)) == 10.3)
    37  
    38  assert(string.format("%.3s", "12345") == "123")