From cca4ee2e464d3ca43babe9eadbd900aca22fe9fa Mon Sep 17 00:00:00 2001 From: Alexander Smorkalov Date: Tue, 5 Sep 2023 14:35:37 +0300 Subject: [PATCH] Revert PR 24186 as it force skip tests. --- modules/core/test/test_misc.cpp | 36 -------------------- modules/python/test/tests_common.py | 2 -- modules/ts/include/opencv2/ts/ts_ext.hpp | 42 +++--------------------- modules/ts/src/ts_tags.cpp | 13 +++----- 4 files changed, 8 insertions(+), 85 deletions(-) diff --git a/modules/core/test/test_misc.cpp b/modules/core/test/test_misc.cpp index cb89dcf573..8ed0afe771 100644 --- a/modules/core/test/test_misc.cpp +++ b/modules/core/test/test_misc.cpp @@ -917,41 +917,5 @@ REGISTER_TYPED_TEST_CASE_P(Rect_Test, Overflows); typedef ::testing::Types RectTypes; INSTANTIATE_TYPED_TEST_CASE_P(Negative_Test, Rect_Test, RectTypes); -// Expected that SkipTestException thrown in the constructor should skip test but not fail -struct TestFixtureSkip: public ::testing::Test { - TestFixtureSkip(bool throwEx = true) { - if (throwEx) { - throw SkipTestException("Skip test at constructor"); - } - } -}; - -TEST_F(TestFixtureSkip, NoBodyRun) { - FAIL() << "Unreachable code called"; -} - -// Check no test body started in case of skip exception at static SetUpTestCase -struct TestSetUpTestCaseSkip: public ::testing::Test { - static void SetUpTestCase() { - throw SkipTestException("Skip test at SetUpTestCase"); - } -}; - -TEST_F(TestSetUpTestCaseSkip, NoBodyRun) { - FAIL() << "Unreachable code called"; -} -TEST_F(TestSetUpTestCaseSkip, NoBodyRun2) { - FAIL() << "Unreachable code called"; -} - -struct TestSetUpSkip: public ::testing::Test { - virtual void SetUp() { - throw SkipTestException("Skip test at SetUp"); - } -}; - -TEST_F(TestSetUpSkip, NoBodyRun) { - FAIL() << "Unreachable code called"; -} }} // namespace diff --git a/modules/python/test/tests_common.py b/modules/python/test/tests_common.py index d673dd7b78..ec49f46d0d 100644 --- a/modules/python/test/tests_common.py +++ b/modules/python/test/tests_common.py @@ -36,8 +36,6 @@ class NewOpenCVTests(unittest.TestCase): return candidate if required: self.fail('File ' + filename + ' not found') - else: - self.skipTest('File ' + filename + ' not found') return None diff --git a/modules/ts/include/opencv2/ts/ts_ext.hpp b/modules/ts/include/opencv2/ts/ts_ext.hpp index 4603dba4f7..efa4860510 100644 --- a/modules/ts/include/opencv2/ts/ts_ext.hpp +++ b/modules/ts/include/opencv2/ts/ts_ext.hpp @@ -47,18 +47,6 @@ bool checkBigDataTests(); } \ } \ -#define CV__TEST_SETUP_IMPL(parent_class) \ - { \ - try { \ - parent_class::SetUp(); \ - } catch (const cvtest::details::SkipTestExceptionBase& e) { \ - printf("[ SKIP ] %s\n", e.what()); \ - } \ - } - -struct DummyTest : public ::testing::Test { - virtual void TestBody() CV_OVERRIDE {} -}; #undef TEST #define TEST_(test_case_name, test_name, parent_class, bodyMethodName, BODY_ATTR, BODY_IMPL) \ @@ -72,17 +60,6 @@ struct DummyTest : public ::testing::Test { GTEST_DISALLOW_COPY_AND_ASSIGN_(\ GTEST_TEST_CLASS_NAME_(test_case_name, test_name));\ };\ - class test_case_name##test_name##_factory : public ::testing::internal::TestFactoryBase { \ - public:\ - virtual ::testing::Test* CreateTest() { \ - try { \ - return new GTEST_TEST_CLASS_NAME_(test_case_name, test_name); \ - } catch (const cvtest::details::SkipTestExceptionBase& e) { \ - printf("[ SKIP ] %s\n", e.what()); \ - return new DummyTest(); \ - } \ - } \ - };\ \ ::testing::TestInfo* const GTEST_TEST_CLASS_NAME_(test_case_name, test_name)\ ::test_info_ =\ @@ -92,7 +69,8 @@ struct DummyTest : public ::testing::Test { (::testing::internal::GetTestTypeId()), \ parent_class::SetUpTestCase, \ parent_class::TearDownTestCase, \ - new test_case_name##test_name##_factory);\ + new ::testing::internal::TestFactoryImpl<\ + GTEST_TEST_CLASS_NAME_(test_case_name, test_name)>);\ void GTEST_TEST_CLASS_NAME_(test_case_name, test_name)::TestBody() BODY_IMPL( #test_case_name "_" #test_name ) \ void GTEST_TEST_CLASS_NAME_(test_case_name, test_name)::bodyMethodName() @@ -131,22 +109,10 @@ struct DummyTest : public ::testing::Test { private:\ virtual void TestBody() CV_OVERRIDE;\ virtual void Body(); \ - virtual void SetUp() CV_OVERRIDE; \ static ::testing::TestInfo* const test_info_ GTEST_ATTRIBUTE_UNUSED_;\ GTEST_DISALLOW_COPY_AND_ASSIGN_(\ GTEST_TEST_CLASS_NAME_(test_fixture, test_name));\ };\ - class test_fixture##test_name##_factory : public ::testing::internal::TestFactoryBase { \ - public:\ - virtual ::testing::Test* CreateTest() { \ - try { \ - return new GTEST_TEST_CLASS_NAME_(test_fixture, test_name); \ - } catch (const cvtest::details::SkipTestExceptionBase& e) { \ - printf("[ SKIP ] %s\n", e.what()); \ - return new DummyTest(); \ - } \ - } \ - };\ \ ::testing::TestInfo* const GTEST_TEST_CLASS_NAME_(test_fixture, test_name)\ ::test_info_ =\ @@ -156,9 +122,9 @@ struct DummyTest : public ::testing::Test { (::testing::internal::GetTypeId()), \ test_fixture::SetUpTestCase, \ test_fixture::TearDownTestCase, \ - new test_fixture##test_name##_factory);\ + new ::testing::internal::TestFactoryImpl<\ + GTEST_TEST_CLASS_NAME_(test_fixture, test_name)>);\ void GTEST_TEST_CLASS_NAME_(test_fixture, test_name)::TestBody() CV__TEST_BODY_IMPL( #test_fixture "_" #test_name ) \ - void GTEST_TEST_CLASS_NAME_(test_fixture, test_name)::SetUp() CV__TEST_SETUP_IMPL(test_fixture) \ void GTEST_TEST_CLASS_NAME_(test_fixture, test_name)::Body() // Don't use directly diff --git a/modules/ts/src/ts_tags.cpp b/modules/ts/src/ts_tags.cpp index 21653e17ee..8bed1b739f 100644 --- a/modules/ts/src/ts_tags.cpp +++ b/modules/ts/src/ts_tags.cpp @@ -11,7 +11,7 @@ namespace cvtest { static bool printTestTag = false; static std::vector currentDirectTestTags, currentImpliedTestTags; -static std::vector skipped_tests; +static std::vector skipped_tests; static std::map& getTestTagsSkipCounts() { @@ -26,7 +26,7 @@ static std::map& getTestTagsSkipExtraCounts() void testTagIncreaseSkipCount(const std::string& tag, bool isMain, bool appendSkipTests) { if (appendSkipTests) - skipped_tests.push_back(::testing::UnitTest::GetInstance()->current_test_case()); + skipped_tests.push_back(::testing::UnitTest::GetInstance()->current_test_info()); std::map& counts = isMain ? getTestTagsSkipCounts() : getTestTagsSkipExtraCounts(); std::map::iterator i = counts.find(tag); if (i == counts.end()) @@ -280,11 +280,6 @@ static bool isTestTagSkipped(const std::string& testTag, CV_OUT std::string& ski void checkTestTags() { - if (std::find(skipped_tests.begin(), skipped_tests.end(), - ::testing::UnitTest::GetInstance()->current_test_case()) != skipped_tests.end()) { - throw details::SkipTestExceptionBase(false); - } - std::string skipTag; const std::vector& testTags = currentDirectTestTags; { @@ -312,7 +307,7 @@ void checkTestTags() } if (found != tags.size()) { - skipped_tests.push_back(::testing::UnitTest::GetInstance()->current_test_case()); + skipped_tests.push_back(::testing::UnitTest::GetInstance()->current_test_info()); throw details::SkipTestExceptionBase("Test tags don't pass required tags list (--test_tag parameter)", true); } } @@ -346,7 +341,7 @@ void checkTestTags() if (!skip_message.empty()) { - skipped_tests.push_back(::testing::UnitTest::GetInstance()->current_test_case()); + skipped_tests.push_back(::testing::UnitTest::GetInstance()->current_test_info()); throw details::SkipTestExceptionBase(skip_message, true); } }