summaryrefslogtreecommitdiff
path: root/tests/scan.py
diff options
context:
space:
mode:
authorStefan Sauer <ensonic@users.sf.net>2018-12-07 07:54:06 +0100
committerStefan Sauer <ensonic@users.sf.net>2018-12-07 07:54:06 +0100
commitcf3ba8334f27d17748d44a523052be93d2791b8c (patch)
treed6bbbb7f03e0772736c60f926efed32abff830ea /tests/scan.py
parent1b0a0032e95d151774f740cfe55f72190b7f2b01 (diff)
downloadgtk-doc-cf3ba8334f27d17748d44a523052be93d2791b8c.tar.gz
scan: add tests for function pointers
Diffstat (limited to 'tests/scan.py')
-rw-r--r--tests/scan.py24
1 files changed, 15 insertions, 9 deletions
diff --git a/tests/scan.py b/tests/scan.py
index 181e12d..97001c3 100644
--- a/tests/scan.py
+++ b/tests/scan.py
@@ -359,6 +359,19 @@ class ScanHeaderContentUnions(ScanHeaderContentTestCase):
# USER FUNCTION (aka function pointer types)
+class ScanHeaderContentUserFunction(ScanHeaderContentTestCase):
+ """Test parsing of function pointer declarations."""
+
+ def assertDecl(self, name, ret, params, slist):
+ self.assertEqual([name], slist)
+ d = '<USER_FUNCTION>\n<NAME>%s</NAME>\n<RETURNS>%s</RETURNS>\n%s</USER_FUNCTION>\n' % (name, ret, params)
+ self.assertEqual([d], self.decls)
+ self.assertEqual([], self.types)
+
+ def test_FindsFunctionVoid(self):
+ header = 'typedef void (*func)();'
+ slist, doc_comments = self.scanHeaderContent([header])
+ self.assertDecl('func', 'void', '', slist)
class ScanHeaderContentVariabless(ScanHeaderContentTestCase):
@@ -396,13 +409,6 @@ class ScanHeaderContentVariabless(ScanHeaderContentTestCase):
header.splitlines(keepends=True))
self.assertDecl('var', header, slist)
- def debug(self):
- # for test_FindsExternVar + test_FindsExternPtrVar
- header = 'extern struct s var;'
- slist, doc_comments = self.scanHeaderContent(
- header.splitlines(keepends=True))
- self.assertDecl('var', header, slist)
-
if __name__ == '__main__':
unittest.main()
@@ -410,6 +416,6 @@ if __name__ == '__main__':
# from gtkdoc import common
# common.setup_logging()
#
- # t = ScanHeaderContentVariabless()
+ # t = ScanHeaderContentUserFunction()
# t.setUp()
- # t.debug()
+ # t.test_FindsFunctionVoid()