marshal: don't escape quotes unnecessarily (#991)
Only 3 consecutive quotation marks need to be quoted. We choose to quote all quotation marks in a sequence if there are 3 or more consecutive present. Fixes #990 --------- Co-authored-by: Thomas Pelletier <thomas@pelletier.dev>
This commit is contained in:
@@ -387,6 +387,54 @@ name = 'Alice'
|
||||
expected: `A = """
|
||||
hello
|
||||
world"""
|
||||
`,
|
||||
},
|
||||
{
|
||||
desc: "multi-line quotation",
|
||||
v: struct {
|
||||
A string `toml:",multiline"`
|
||||
}{
|
||||
A: "hello\n\"world\"",
|
||||
},
|
||||
expected: `A = """
|
||||
hello
|
||||
"world""""
|
||||
`,
|
||||
},
|
||||
{
|
||||
desc: "multi-line triple quotation",
|
||||
v: struct {
|
||||
A string `toml:",multiline"`
|
||||
}{
|
||||
A: "hello\n\"\"\"world\"",
|
||||
},
|
||||
expected: `A = """
|
||||
hello
|
||||
\"\"\"world""""
|
||||
`,
|
||||
},
|
||||
{
|
||||
desc: "multi-line triple quotation",
|
||||
v: struct {
|
||||
A string `toml:",multiline"`
|
||||
}{
|
||||
A: "hello\n\"world\"\"\"",
|
||||
},
|
||||
expected: `A = """
|
||||
hello
|
||||
"world\"\"\""""
|
||||
`,
|
||||
},
|
||||
{
|
||||
desc: "multi-line sextuple quotation",
|
||||
v: struct {
|
||||
A string `toml:",multiline"`
|
||||
}{
|
||||
A: "hello\n\"\"\"\"\"\"world\"",
|
||||
},
|
||||
expected: `A = """
|
||||
hello
|
||||
\"\"\"\"\"\"world""""
|
||||
`,
|
||||
},
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user