qapi: Fix enum doc comment checking
Enumeration type documentation comments are not checked, as
demonstrated by test doc-bad-enum-member. This is because we neglect
to call self.doc.check() for enumeration types. Messed up in
816a57cd6e
"qapi: Fix detection of bogus member documentation". Fix
it.
Signed-off-by: Markus Armbruster <armbru@redhat.com>
Message-Id: <20191024110237.30963-10-armbru@redhat.com>
This commit is contained in:
parent
ee1e6a1f6c
commit
36a43905ff
@ -229,6 +229,10 @@ class QAPISchemaEnumType(QAPISchemaType):
|
||||
for m in self.members:
|
||||
self.doc.connect_member(m)
|
||||
|
||||
def check_doc(self):
|
||||
if self.doc:
|
||||
self.doc.check()
|
||||
|
||||
def is_implicit(self):
|
||||
# See QAPISchema._make_implicit_enum_type() and ._def_predefineds()
|
||||
return self.name.endswith('Kind') or self.name == 'QType'
|
||||
|
@ -0,0 +1 @@
|
||||
doc-bad-enum-member.json:3: the following documented members are not in the declaration: a
|
@ -1,5 +1,4 @@
|
||||
# Members listed in the doc comment must exist in the actual schema
|
||||
# BUG: nonexistent @a is not rejected
|
||||
|
||||
##
|
||||
# @Foo:
|
||||
|
@ -1,21 +0,0 @@
|
||||
module None
|
||||
object q_empty
|
||||
enum QType
|
||||
prefix QTYPE
|
||||
member none
|
||||
member qnull
|
||||
member qnum
|
||||
member qstring
|
||||
member qdict
|
||||
member qlist
|
||||
member qbool
|
||||
module doc-bad-enum-member.json
|
||||
enum Foo
|
||||
member b
|
||||
doc symbol=Foo
|
||||
body=
|
||||
|
||||
arg=a
|
||||
a
|
||||
arg=b
|
||||
b
|
Loading…
Reference in New Issue
Block a user