Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 4 additions & 3 deletions src/pygccxml/declarations/cpptypes.py
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@

from . import algorithms_cache
from . import byte_info
from . import elaborated_info


class type_t(byte_info.byte_info):
Expand Down Expand Up @@ -593,10 +594,10 @@ def __init__(self, base):
compound_t.__init__(self, base)

def build_decl_string(self, with_defaults=True):
if hasattr(self.base.declaration, "elaborated_type_specifier"):
prefix = ""
if isinstance(self.base, type(declarated_t)) and \
isinstance(self.base.declaration, type(elaborated_info)):
prefix = self.base.declaration.elaborated_type_specifier + " "
else:
prefix = ""
return prefix + self.base.build_decl_string(with_defaults)

def _clone_impl(self):
Expand Down
File renamed without changes.
37 changes: 37 additions & 0 deletions tests/test_overrides.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
# Copyright 2014-2020 Insight Software Consortium.
# Copyright 2004-2009 Roman Yakovenko.
# Distributed under the Boost Software License, Version 1.0.
# See http://www.boost.org/LICENSE_1_0.txt

import pytest

from . import autoconfig

from pygccxml import parser
from pygccxml import declarations


@pytest.fixture
def global_ns_fixture():
config = autoconfig.cxx_parsers_cfg.config.clone()
config.castxml_epic_version = 1
config.cflags = "-std=c++11"
decls = parser.parse(["test_overrides.hpp"], config)
global_ns = declarations.get_global_namespace(decls)
return global_ns


def test_overrides(global_ns_fixture):
"""
Check that the override information is populated for the
simple::goodbye function. It should contain the decl for the
base::goodbye function. Base::goodbye has no override so it
will be none
"""
base = global_ns_fixture.class_("base").member_function("goodbye")
override_decl = global_ns_fixture.class_("simple")\
.member_function("goodbye")

assert base.overrides is None
assert override_decl.overrides is not None
assert override_decl.overrides == base
4 changes: 1 addition & 3 deletions unittests/templates_tester.py → tests/test_templates.py
Original file line number Diff line number Diff line change
Expand Up @@ -3,14 +3,12 @@
# Distributed under the Boost Software License, Version 1.0.
# See http://www.boost.org/LICENSE_1_0.txt

import unittest

from . import parser_test_case

from pygccxml import declarations


class Test(parser_test_case.parser_test_case_t):
class TestTemplates(parser_test_case.parser_test_case_t):

def __test_split_impl(self, decl_string, name, args):
self.assertTrue(
Expand Down
7 changes: 0 additions & 7 deletions unittests/test_all.py
Original file line number Diff line number Diff line change
Expand Up @@ -6,19 +6,16 @@
import os
import sys
import unittest
import platform

from . import declarations_tester
from . import gccxml_runner_tester
from . import project_reader_correctness_tester
from . import source_reader_tester
from . import start_with_declarations_tester
from . import templates_tester
from . import hierarchy_traveling
from . import patcher_tester
from . import complex_types_tester
from . import cached_source_file_tester
from . import namespace_matcher_tester
from . import cache_enums_tester
from . import non_copyable_classes_tester
from . import vector_traits_tester
Expand All @@ -33,19 +30,16 @@
from . import gccxml10184_tester
from . import gccxml10185_tester
from . import test_directory_cache
from . import test_overrides

testers = [
declarations_tester,
gccxml_runner_tester,
project_reader_correctness_tester,
source_reader_tester,
start_with_declarations_tester,
templates_tester,
hierarchy_traveling,
complex_types_tester,
cached_source_file_tester,
namespace_matcher_tester,
cache_enums_tester,
non_copyable_classes_tester,
vector_traits_tester,
Expand All @@ -61,7 +55,6 @@
remove_template_defaults_tester,
patcher_tester,
find_container_traits_tester,
test_overrides,
]


Expand Down
62 changes: 0 additions & 62 deletions unittests/test_overrides.py

This file was deleted.

Loading