Skip to content

Commit fdf73c4

Browse files
committed
Test: move another batch to pytest
1 parent 6eb7b9e commit fdf73c4

File tree

6 files changed

+42
-75
lines changed

6 files changed

+42
-75
lines changed

src/pygccxml/declarations/cpptypes.py

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@
99

1010
from . import algorithms_cache
1111
from . import byte_info
12+
from . import elaborated_info
1213

1314

1415
class type_t(byte_info.byte_info):
@@ -593,10 +594,10 @@ def __init__(self, base):
593594
compound_t.__init__(self, base)
594595

595596
def build_decl_string(self, with_defaults=True):
596-
if hasattr(self.base.declaration, "elaborated_type_specifier"):
597+
prefix = ""
598+
if isinstance(self.base, type(declarated_t)) and \
599+
isinstance(self.base.declaration, type(elaborated_info)):
597600
prefix = self.base.declaration.elaborated_type_specifier + " "
598-
else:
599-
prefix = ""
600601
return prefix + self.base.build_decl_string(with_defaults)
601602

602603
def _clone_impl(self):

tests/test_overrides.py

Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,37 @@
1+
# Copyright 2014-2020 Insight Software Consortium.
2+
# Copyright 2004-2009 Roman Yakovenko.
3+
# Distributed under the Boost Software License, Version 1.0.
4+
# See http://www.boost.org/LICENSE_1_0.txt
5+
6+
import pytest
7+
8+
from . import autoconfig
9+
10+
from pygccxml import parser
11+
from pygccxml import declarations
12+
13+
14+
@pytest.fixture
15+
def global_ns_fixture():
16+
config = autoconfig.cxx_parsers_cfg.config.clone()
17+
config.castxml_epic_version = 1
18+
config.cflags = "-std=c++11"
19+
decls = parser.parse(["test_overrides.hpp"], config)
20+
global_ns = declarations.get_global_namespace(decls)
21+
return global_ns
22+
23+
24+
def test_overrides(global_ns_fixture):
25+
"""
26+
Check that the override information is populated for the
27+
simple::goodbye function. It should contain the decl for the
28+
base::goodbye function. Base::goodbye has no override so it
29+
will be none
30+
"""
31+
base = global_ns_fixture.class_("base").member_function("goodbye")
32+
override_decl = global_ns_fixture.class_("simple")\
33+
.member_function("goodbye")
34+
35+
assert base.overrides is None
36+
assert override_decl.overrides is not None
37+
assert override_decl.overrides == base

unittests/templates_tester.py renamed to tests/test_templates.py

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,14 +3,12 @@
33
# Distributed under the Boost Software License, Version 1.0.
44
# See http://www.boost.org/LICENSE_1_0.txt
55

6-
import unittest
7-
86
from . import parser_test_case
97

108
from pygccxml import declarations
119

1210

13-
class Test(parser_test_case.parser_test_case_t):
11+
class TestTemplates(parser_test_case.parser_test_case_t):
1412

1513
def __test_split_impl(self, decl_string, name, args):
1614
self.assertTrue(

unittests/test_all.py

Lines changed: 0 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -6,19 +6,16 @@
66
import os
77
import sys
88
import unittest
9-
import platform
109

1110
from . import declarations_tester
1211
from . import gccxml_runner_tester
1312
from . import project_reader_correctness_tester
1413
from . import source_reader_tester
1514
from . import start_with_declarations_tester
16-
from . import templates_tester
1715
from . import hierarchy_traveling
1816
from . import patcher_tester
1917
from . import complex_types_tester
2018
from . import cached_source_file_tester
21-
from . import namespace_matcher_tester
2219
from . import cache_enums_tester
2320
from . import non_copyable_classes_tester
2421
from . import vector_traits_tester
@@ -33,19 +30,16 @@
3330
from . import gccxml10184_tester
3431
from . import gccxml10185_tester
3532
from . import test_directory_cache
36-
from . import test_overrides
3733

3834
testers = [
3935
declarations_tester,
4036
gccxml_runner_tester,
4137
project_reader_correctness_tester,
4238
source_reader_tester,
4339
start_with_declarations_tester,
44-
templates_tester,
4540
hierarchy_traveling,
4641
complex_types_tester,
4742
cached_source_file_tester,
48-
namespace_matcher_tester,
4943
cache_enums_tester,
5044
non_copyable_classes_tester,
5145
vector_traits_tester,
@@ -61,7 +55,6 @@
6155
remove_template_defaults_tester,
6256
patcher_tester,
6357
find_container_traits_tester,
64-
test_overrides,
6558
]
6659

6760

unittests/test_overrides.py

Lines changed: 0 additions & 62 deletions
This file was deleted.

0 commit comments

Comments
 (0)