Skip to content

Commit 1e662f4

Browse files
committed
Add more examples of escaping newlines
1 parent 8eb9833 commit 1e662f4

File tree

1 file changed

+32
-0
lines changed

1 file changed

+32
-0
lines changed

spec/graphql/language/parser_spec.rb

Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,38 @@
3030

3131
assert GraphQL.parse(GraphQL::Language.escape_single_quoted_newlines(nl_query_string_1))
3232
assert GraphQL.parse(GraphQL::Language.escape_single_quoted_newlines(nl_query_string_2))
33+
34+
example_query_str = "mutation {
35+
createRecord(data: {
36+
dynamicFields: { string_test: \"avenue 1st
37+
2nd line\"}
38+
})
39+
{ id, dynamicFields }
40+
}"
41+
assert_raises GraphQL::ParseError do
42+
GraphQL.parse(example_query_str)
43+
end
44+
45+
escaped_query_str = GraphQL::Language.escape_single_quoted_newlines(example_query_str)
46+
47+
expected_escaped_query_str = "mutation {
48+
createRecord(data: {
49+
dynamicFields: { string_test: \"avenue 1st\\n2nd line\"}
50+
})
51+
{ id, dynamicFields }
52+
}"
53+
assert_equal expected_escaped_query_str, escaped_query_str
54+
assert GraphQL.parse(escaped_query_str )
55+
end
56+
57+
it "parses single-quoted strings with escaped newlines" do
58+
example_query_str = 'mutation {
59+
createRecord(data: {
60+
dynamicFields: { string_test: "avenue 1st\n2nd line"}
61+
})
62+
{ id, dynamicFields }
63+
}'
64+
assert GraphQL.parse(example_query_str)
3365
end
3466

3567
it "can replace single-quoted newlines" do

0 commit comments

Comments
 (0)