diff --git a/tests/test_better_templates_matcher.py b/tests/test_better_templates_matcher.py new file mode 100644 index 00000000..86137969 --- /dev/null +++ b/tests/test_better_templates_matcher.py @@ -0,0 +1,37 @@ +# Copyright 2014-2017 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_better(): + COMPILATION_MODE = parser.COMPILATION_MODE.ALL_AT_ONCE + INIT_OPTIMIZER = True + config = autoconfig.cxx_parsers_cfg.config.clone() + decls = parser.parse( + ['better_templates_matcher_tester.hpp'], + config, COMPILATION_MODE + ) + global_ns = declarations.get_global_namespace(decls) + if INIT_OPTIMIZER: + global_ns.init_optimizer() + return global_ns + + +def test_better_templates_matcher(global_ns_better): + classes = [ + "::Ogre::PlaneBoundedVolume", + "::Ogre::Plane", + "::Ogre::Singleton", + "::Ogre::PCZoneFactoryManager", + ] + for i in classes: + global_ns_better.class_(i) diff --git a/unittests/cache_enums_tester.py b/tests/test_cache_enums.py similarity index 100% rename from unittests/cache_enums_tester.py rename to tests/test_cache_enums.py diff --git a/unittests/cached_source_file_tester.py b/tests/test_cached_source_file.py similarity index 100% rename from unittests/cached_source_file_tester.py rename to tests/test_cached_source_file.py diff --git a/unittests/calling_convention_tester.py b/tests/test_calling_convention.py similarity index 100% rename from unittests/calling_convention_tester.py rename to tests/test_calling_convention.py diff --git a/unittests/declarations_cache_tester.py b/tests/test_declarations_cache.py similarity index 100% rename from unittests/declarations_cache_tester.py rename to tests/test_declarations_cache.py diff --git a/unittests/test_directory_cache.py b/tests/test_directory_cache.py similarity index 93% rename from unittests/test_directory_cache.py rename to tests/test_directory_cache.py index eefe35bf..ee58e64c 100644 --- a/unittests/test_directory_cache.py +++ b/tests/test_directory_cache.py @@ -4,10 +4,10 @@ # See http://www.boost.org/LICENSE_1_0.txt import os -import sys import shutil import unittest +from . import autoconfig from . import parser_test_case from pygccxml import parser @@ -18,10 +18,8 @@ class Test(parser_test_case.parser_test_case_t): def __init__(self, *args): parser_test_case.parser_test_case_t.__init__(self, *args) self.header = "typedefs1.hpp" - this_module_dir_path = os.path.abspath( - os.path.dirname(sys.modules[__name__].__file__)) self.cache_dir = os.path.join( - this_module_dir_path, "data/directory_cache_test") + autoconfig.data_directory, "directory_cache_test") def setUp(self): # Clear the cache tree diff --git a/unittests/project_reader_correctness_tester.py b/tests/test_project_reader_correctness.py similarity index 100% rename from unittests/project_reader_correctness_tester.py rename to tests/test_project_reader_correctness.py diff --git a/unittests/better_templates_matcher_tester.py b/unittests/better_templates_matcher_tester.py deleted file mode 100644 index ebb4ae77..00000000 --- a/unittests/better_templates_matcher_tester.py +++ /dev/null @@ -1,50 +0,0 @@ -# Copyright 2014-2017 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 unittest - -from . import parser_test_case - -from pygccxml import parser -from pygccxml import declarations - - -class Test(parser_test_case.parser_test_case_t): - - global_ns = None - - def __init__(self, *args): - parser_test_case.parser_test_case_t.__init__(self, *args) - self.header = 'better_templates_matcher_tester.hpp' - - def setUp(self): - if not Test.global_ns: - decls = parser.parse([self.header], self.config) - Test.global_ns = declarations.get_global_namespace(decls) - Test.global_ns.init_optimizer() - - def test(self): - classes = [ - ('::std::vector>'), - '::std::vector>', - '::Ogre::Singleton< Ogre::PCZoneFactoryManager>'] - for i in classes: - self.global_ns.class_(i) - - -def create_suite(): - suite = unittest.TestSuite() - suite.addTest( - unittest.TestLoader().loadTestsFromTestCase(testCaseClass=Test)) - return suite - - -def run_suite(): - unittest.TextTestRunner(verbosity=2).run(create_suite()) - - -if __name__ == "__main__": - run_suite() diff --git a/unittests/test_all.py b/unittests/test_all.py index 2f77e785..5221b4fe 100644 --- a/unittests/test_all.py +++ b/unittests/test_all.py @@ -9,49 +9,35 @@ 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 hierarchy_traveling from . import patcher_tester from . import complex_types_tester -from . import cached_source_file_tester -from . import cache_enums_tester from . import non_copyable_classes_tester from . import vector_traits_tester from . import string_traits_tester -from . import declarations_cache_tester from . import dependencies_tester from . import remove_template_defaults_tester from . import find_container_traits_tester -from . import better_templates_matcher_tester from . import declaration_matcher_tester -from . import calling_convention_tester from . import gccxml10184_tester from . import gccxml10185_tester -from . import test_directory_cache testers = [ declarations_tester, gccxml_runner_tester, - project_reader_correctness_tester, source_reader_tester, start_with_declarations_tester, hierarchy_traveling, complex_types_tester, - cached_source_file_tester, - cache_enums_tester, non_copyable_classes_tester, vector_traits_tester, string_traits_tester, - declarations_cache_tester, dependencies_tester, - better_templates_matcher_tester, declaration_matcher_tester, - calling_convention_tester, gccxml10184_tester, gccxml10185_tester, - test_directory_cache, remove_template_defaults_tester, patcher_tester, find_container_traits_tester,