summaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
authorJulian <cod3monk@users.noreply.github.com>2018-12-07 18:24:36 +0100
committerEli Bendersky <eliben@users.noreply.github.com>2018-12-07 09:24:36 -0800
commit0da01ca3ede2829244e46d69613a54a89edeaf61 (patch)
treeef8987e9eba2a66edbc9de1db4ddd19295c7e7df /tests
parent694ce0d27650a01490c3316143444e5904840a65 (diff)
downloadpycparser-0da01ca3ede2829244e46d69613a54a89edeaf61.tar.gz
extended and cleaned up #pragma testcases (#297)
Diffstat (limited to 'tests')
-rwxr-xr-xtests/test_c_parser.py20
1 files changed, 15 insertions, 5 deletions
diff --git a/tests/test_c_parser.py b/tests/test_c_parser.py
index a48f1c6..34c1f1e 100755
--- a/tests/test_c_parser.py
+++ b/tests/test_c_parser.py
@@ -1407,6 +1407,10 @@ class TestCParser_fundamentals(TestCParser_base):
void main() {
#pragma foo
for(;;) {}
+ #pragma baz
+ {
+ int i = 0;
+ }
#pragma
}
struct s {
@@ -1421,14 +1425,18 @@ class TestCParser_fundamentals(TestCParser_base):
self.assertIsInstance(s1_ast.ext[1].body.block_items[0], Pragma)
self.assertEqual(s1_ast.ext[1].body.block_items[0].string, 'foo')
self.assertEqual(s1_ast.ext[1].body.block_items[0].coord.line, 4)
-
+
self.assertIsInstance(s1_ast.ext[1].body.block_items[2], Pragma)
- self.assertEqual(s1_ast.ext[1].body.block_items[2].string, '')
+ self.assertEqual(s1_ast.ext[1].body.block_items[2].string, 'baz')
self.assertEqual(s1_ast.ext[1].body.block_items[2].coord.line, 6)
+ self.assertIsInstance(s1_ast.ext[1].body.block_items[4], Pragma)
+ self.assertEqual(s1_ast.ext[1].body.block_items[4].string, '')
+ self.assertEqual(s1_ast.ext[1].body.block_items[4].coord.line, 10)
+
self.assertIsInstance(s1_ast.ext[2].type.type.decls[0], Pragma)
self.assertEqual(s1_ast.ext[2].type.type.decls[0].string, 'baz')
- self.assertEqual(s1_ast.ext[2].type.type.decls[0].coord.line, 9)
+ self.assertEqual(s1_ast.ext[2].type.type.decls[0].coord.line, 13)
def test_pragmacomp_or_statement(self):
s1 = r'''
@@ -1475,8 +1483,10 @@ class TestCParser_fundamentals(TestCParser_base):
self.assertIsInstance(s1_ast.ext[0].body.block_items[4].iftrue.block_items[1], Assignment)
self.assertIsInstance(s1_ast.ext[0].body.block_items[5], Switch)
self.assertIsInstance(s1_ast.ext[0].body.block_items[5].stmt.stmts[0], Compound)
- self.assertIsInstance(s1_ast.ext[0].body.block_items[5].stmt.stmts[0].block_items[0], Pragma)
- self.assertIsInstance(s1_ast.ext[0].body.block_items[5].stmt.stmts[0].block_items[1], Assignment)
+ self.assertIsInstance(s1_ast.ext[0].body.block_items[5].stmt.stmts[0].block_items[0],
+ Pragma)
+ self.assertIsInstance(s1_ast.ext[0].body.block_items[5].stmt.stmts[0].block_items[1],
+ Assignment)
class TestCParser_whole_code(TestCParser_base):