Skip to content

Commit 40e3bde

Browse files
authored
Workaround inconsistent \? in proto textformat (#512)
Pending fix in the python textformat parser but working around for now. Textproto spec supports '\?' in string literals meaning '?' but does not require escaping.
1 parent cb51b41 commit 40e3bde

1 file changed

Lines changed: 27 additions & 27 deletions

File tree

‎tests/simple/testdata/parse.textproto‎

Lines changed: 27 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -153,36 +153,36 @@ section {
153153
expr: '"""hello"""'
154154
value: { string_value: "hello" }
155155
}
156-
157156
test {
158157
name: "single_quoted_escaped_punctuation"
159-
expr: "' \\\\ \\\? \\\" \\\' \\` '"
160-
value: { string_value: " \\ \? \" \' ` " }
158+
# ' \\ \? \" \' \` '
159+
expr: "' \\\\ \\? \\\" \\\' \\` '"
160+
value: { string_value: " \\ ? \" \' ` " }
161161
}
162162
test {
163163
name: "double_quoted_escaped_punctuation"
164-
expr: '" \\\\ \\\? \\\" \\\' \\` "'
165-
value: { string_value: " \\ \? \" \' ` " }
164+
expr: '" \\\\ \\? \\\" \\\' \\` "'
165+
value: { string_value: " \\ ? \" \' ` " }
166166
}
167167
test {
168168
name: "triple_single_quoted_escaped_punctuation"
169-
expr: "''' \\\\ \\\? \\\" \\\' \\` '''"
170-
value: { string_value: " \\ \? \" \' ` " }
169+
expr: "''' \\\\ \\? \\\" \\\' \\` '''"
170+
value: { string_value: " \\ ? \" \' ` " }
171171
}
172172
test {
173173
name: "triple_double_quoted_escaped_punctuation"
174-
expr: '""" \\\\ \\\? \\\" \\\' \\` """'
175-
value: { string_value: " \\ \? \" \' ` " }
174+
expr: '""" \\\\ \\? \\\" \\\' \\` """'
175+
value: { string_value: " \\ ? \" \' ` " }
176176
}
177177
test {
178178
name: "triple_single_quoted_unescaped_punctuation"
179179
expr: "''' ? \" \' ` '''"
180-
value: { string_value: " \? \" \' ` " }
180+
value: { string_value: " ? \" \' ` " }
181181
}
182182
test {
183183
name: "triple_double_quoted_unescaped_punctuation"
184184
expr: '""" ? \" \' ` """'
185-
value: { string_value: " \? \" \' ` " }
185+
value: { string_value: " ? \" \' ` " }
186186
}
187187

188188
test {
@@ -904,44 +904,44 @@ section {
904904

905905
test {
906906
name: "raw_single_quoted_escapes"
907-
expr: "br' \\\\ \\\? \\\" \\` \\a \\b \\f \\t \\v \\n \\r \\000 \\x00 \\X00 \\u0000 \\U00000000 '"
908-
value: { bytes_value: " \\\\ \\\? \\\" \\` \\a \\b \\f \\t \\v \\n \\r \\000 \\x00 \\X00 \\u0000 \\U00000000 " }
907+
expr: "br' \\\\ \\? \\\" \\` \\a \\b \\f \\t \\v \\n \\r \\000 \\x00 \\X00 \\u0000 \\U00000000 '"
908+
value: { bytes_value: " \\\\ \\? \\\" \\` \\a \\b \\f \\t \\v \\n \\r \\000 \\x00 \\X00 \\u0000 \\U00000000 " }
909909
}
910910
test {
911911
name: "raw_double_quoted_escapes"
912-
expr: 'br" \\\\ \\\? \\\' \\` \\a \\b \\f \\t \\v \\n \\r \\000 \\x00 \\X00 \\u0000 \\U00000000 "'
913-
value: { bytes_value: " \\\\ \\\? \\\' \\` \\a \\b \\f \\t \\v \\n \\r \\000 \\x00 \\X00 \\u0000 \\U00000000 " }
912+
expr: 'br" \\\\ \\? \\\' \\` \\a \\b \\f \\t \\v \\n \\r \\000 \\x00 \\X00 \\u0000 \\U00000000 "'
913+
value: { bytes_value: " \\\\ \\? \\\' \\` \\a \\b \\f \\t \\v \\n \\r \\000 \\x00 \\X00 \\u0000 \\U00000000 " }
914914
}
915915
test {
916916
name: "raw_triple_single_quoted_escapes"
917-
expr: "br''' \\\\ \\\? \\\" \\\' \\` \\a \\b \\f \\t \\v \\n \\r \\000 \\x00 \\X00 \\u0000 \\U00000000 '''"
918-
value: { bytes_value: " \\\\ \\\? \\\" \\\' \\` \\a \\b \\f \\t \\v \\n \\r \\000 \\x00 \\X00 \\u0000 \\U00000000 " }
917+
expr: "br''' \\\\ \\? \\\" \\\' \\` \\a \\b \\f \\t \\v \\n \\r \\000 \\x00 \\X00 \\u0000 \\U00000000 '''"
918+
value: { bytes_value: " \\\\ \\? \\\" \\\' \\` \\a \\b \\f \\t \\v \\n \\r \\000 \\x00 \\X00 \\u0000 \\U00000000 " }
919919
}
920920
test {
921921
name: "raw_triple_double_quoted_escapes"
922-
expr: 'br""" \\\\ \\\? \\\" \\\' \\` \\a \\b \\f \\t \\v \\n \\r \\000 \\x00 \\X00 \\u0000 \\U00000000 """'
923-
value: { bytes_value: " \\\\ \\\? \\\" \\\' \\` \\a \\b \\f \\t \\v \\n \\r \\000 \\x00 \\X00 \\u0000 \\U00000000 " }
922+
expr: 'br""" \\\\ \\? \\\" \\\' \\` \\a \\b \\f \\t \\v \\n \\r \\000 \\x00 \\X00 \\u0000 \\U00000000 """'
923+
value: { bytes_value: " \\\\ \\? \\\" \\\' \\` \\a \\b \\f \\t \\v \\n \\r \\000 \\x00 \\X00 \\u0000 \\U00000000 " }
924924
}
925925

926926
test {
927927
name: "upper_raw_single_quoted_escapes"
928-
expr: "bR' \\\\ \\\? \\\" \\` \\a \\b \\f \\t \\v \\n \\r \\000 \\x00 \\X00 \\u0000 \\U00000000 '"
929-
value: { bytes_value: " \\\\ \\\? \\\" \\` \\a \\b \\f \\t \\v \\n \\r \\000 \\x00 \\X00 \\u0000 \\U00000000 " }
928+
expr: "bR' \\\\ \\? \\\" \\` \\a \\b \\f \\t \\v \\n \\r \\000 \\x00 \\X00 \\u0000 \\U00000000 '"
929+
value: { bytes_value: " \\\\ \\? \\\" \\` \\a \\b \\f \\t \\v \\n \\r \\000 \\x00 \\X00 \\u0000 \\U00000000 " }
930930
}
931931
test {
932932
name: "upper_raw_double_quoted_escapes"
933-
expr: 'bR" \\\\ \\\? \\\' \\` \\a \\b \\f \\t \\v \\n \\r \\000 \\x00 \\X00 \\u0000 \\U00000000 "'
934-
value: { bytes_value: " \\\\ \\\? \\\' \\` \\a \\b \\f \\t \\v \\n \\r \\000 \\x00 \\X00 \\u0000 \\U00000000 " }
933+
expr: 'bR" \\\\ \\? \\\' \\` \\a \\b \\f \\t \\v \\n \\r \\000 \\x00 \\X00 \\u0000 \\U00000000 "'
934+
value: { bytes_value: " \\\\ \\? \\\' \\` \\a \\b \\f \\t \\v \\n \\r \\000 \\x00 \\X00 \\u0000 \\U00000000 " }
935935
}
936936
test {
937937
name: "upper_raw_triple_single_quoted_escapes"
938-
expr: "bR''' \\\\ \\\? \\\" \\\' \\` \\a \\b \\f \\t \\v \\n \\r \\000 \\x00 \\X00 \\u0000 \\U00000000 '''"
939-
value: { bytes_value: " \\\\ \\\? \\\" \\\' \\` \\a \\b \\f \\t \\v \\n \\r \\000 \\x00 \\X00 \\u0000 \\U00000000 " }
938+
expr: "bR''' \\\\ \\? \\\" \\\' \\` \\a \\b \\f \\t \\v \\n \\r \\000 \\x00 \\X00 \\u0000 \\U00000000 '''"
939+
value: { bytes_value: " \\\\ \\? \\\" \\\' \\` \\a \\b \\f \\t \\v \\n \\r \\000 \\x00 \\X00 \\u0000 \\U00000000 " }
940940
}
941941
test {
942942
name: "upper_raw_triple_double_quoted_escapes"
943-
expr: 'bR""" \\\\ \\\? \\\" \\\' \\` \\a \\b \\f \\t \\v \\n \\r \\000 \\x00 \\X00 \\u0000 \\U00000000 """'
944-
value: { bytes_value: " \\\\ \\\? \\\" \\\' \\` \\a \\b \\f \\t \\v \\n \\r \\000 \\x00 \\X00 \\u0000 \\U00000000 " }
943+
expr: 'bR""" \\\\ \\? \\\" \\\' \\` \\a \\b \\f \\t \\v \\n \\r \\000 \\x00 \\X00 \\u0000 \\U00000000 """'
944+
value: { bytes_value: " \\\\ \\? \\\" \\\' \\` \\a \\b \\f \\t \\v \\n \\r \\000 \\x00 \\X00 \\u0000 \\U00000000 " }
945945
}
946946
}
947947
section {

0 commit comments

Comments
 (0)