Take double-quote characters into account when parsing trigraph

For now, the function parse_trigraph() defined in gobject/glib-mkenums
script was not taking double-quotes characters into account:

>>> parse_trigraph('name="eek, a comma"')
{'name': '"eek', 'a': None}

This patch take double-quotes characters into account:

>>> parse_trigraph('name="eek, a comma"')
{'name': 'eek, a comma'}

Closes issue #65
This commit is contained in:
Emmanuel Fleury
2023-05-26 11:07:09 +02:00
parent ecbe360a38
commit 7e5607d534
2 changed files with 27 additions and 3 deletions

View File

@@ -520,6 +520,31 @@ comment: {standard_bottom_comment}
"0",
)
def test_with_double_quotes(self):
"""Test trigraphs with double-quoted expressions. Issue #65."""
h_contents = """
typedef enum {
FOO_VALUE /*< nick="eek, a comma" >*/
} Foo;
"""
result = self.runMkenumsWithHeader(h_contents)
self.assertEqual("", result.err)
self.assertSingleEnum(
result,
"Foo",
"foo_",
"FOO_",
"",
"FOO",
"",
"enum",
"Enum",
"ENUM",
"FOO_VALUE",
"eek, a comma",
"0",
)
def test_filename_basename_in_fhead_ftail(self):
template_contents = """
/*** BEGIN file-header ***/