From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail02.groups.io (mail02.groups.io [66.175.222.108]) by spool.mail.gandi.net (Postfix) with ESMTPS id BA678780091 for ; Wed, 7 Feb 2024 03:41:26 +0000 (UTC) DKIM-Signature: a=rsa-sha256; bh=JSIlv8roFZhLEblp5LJDQfgXPQqXIA67NIAm413xBvk=; c=relaxed/simple; d=groups.io; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References:MIME-Version:Precedence:List-Subscribe:List-Help:Sender:List-Id:Mailing-List:Delivered-To:Reply-To:List-Unsubscribe-Post:List-Unsubscribe:Content-Transfer-Encoding; s=20140610; t=1707277285; v=1; b=Ry8wpWGJqOykAyfDUHmrCW9Jckfppyc+S5V+qr/GC9otIdy6p5yxo/dXMvCn1G6huK9eIfXH Wf6QJC1n/P3dcGSKDG9p0eE4vsRQhA3EAOZLSeJBuTfvQA/2qFPNSt4RT2l/oF0ItkMSma3uCYX K+xCvzSYdELy9KAlCvtrRR0U= X-Received: by 127.0.0.2 with SMTP id 9RwlYY7687511x0tnGMUiFLg; Tue, 06 Feb 2024 19:41:25 -0800 X-Received: from mgamail.intel.com (mgamail.intel.com [198.175.65.12]) by mx.groups.io with SMTP id smtpd.web10.13161.1707277279536915825 for ; Tue, 06 Feb 2024 19:41:19 -0800 X-IronPort-AV: E=McAfee;i="6600,9927,10976"; a="12258673" X-IronPort-AV: E=Sophos;i="6.05,250,1701158400"; d="scan'208";a="12258673" X-Received: from orviesa008.jf.intel.com ([10.64.159.148]) by orvoesa104.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 06 Feb 2024 19:41:19 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.05,250,1701158400"; d="scan'208";a="1568989" X-Received: from mdkinney-mobl.amr.corp.intel.com ([10.209.93.91]) by orviesa008-auth.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 06 Feb 2024 19:41:19 -0800 From: "Michael D Kinney" To: devel@edk2.groups.io Cc: Michael Kubacki , Sean Brogan Subject: [edk2-devel] [edk2-stable202402][Patch 6/7] UnitTestFrameworkPkg/SampleGoogleTest: Use EXPECT_ANY_THROW() Date: Tue, 6 Feb 2024 19:41:05 -0800 Message-Id: <20240207034106.1860-7-michael.d.kinney@intel.com> In-Reply-To: <20240207034106.1860-1-michael.d.kinney@intel.com> References: <20240207034106.1860-1-michael.d.kinney@intel.com> MIME-Version: 1.0 Precedence: Bulk List-Subscribe: List-Help: Sender: devel@edk2.groups.io List-Id: Mailing-List: list devel@edk2.groups.io; contact devel+owner@edk2.groups.io Reply-To: devel@edk2.groups.io,michael.d.kinney@intel.com List-Unsubscribe-Post: List-Unsubscribe=One-Click List-Unsubscribe: X-Gm-Message-State: MI9EkPxVd1c4c4O4wP7Qwi4Ax7686176AA= Content-Transfer-Encoding: 8bit X-GND-Status: LEGIT Authentication-Results: spool.mail.gandi.net; dkim=pass header.d=groups.io header.s=20140610 header.b=Ry8wpWGJ; dmarc=fail reason="SPF not aligned (relaxed), DKIM not aligned (relaxed)" header.from=intel.com (policy=none); spf=pass (spool.mail.gandi.net: domain of bounce@groups.io designates 66.175.222.108 as permitted sender) smtp.mailfrom=bounce@groups.io Update GoogleTest samples to use EXPECT_ANY_THROW() instead of ASSERT_DEATH(). ASSERT_DEATH() is a very slow method to detect an expected ASSERT() condition. Throwing an exception from ASSERT() and using EXPECT_ANY_THROW() is several orders of maginitude faster. Update library mappings so target based tests use UnitTestDebugAssertLib.inf and host-based unit tests use UnitTestDebugAssertLibHost.inf Cc: Michael Kubacki Cc: Sean Brogan Signed-off-by: Michael D Kinney --- UnitTestFrameworkPkg/ReadMe.md | 2 +- .../Sample/SampleGoogleTest/SampleGoogleTest.cpp | 13 +++++++++---- 2 files changed, 10 insertions(+), 5 deletions(-) diff --git a/UnitTestFrameworkPkg/ReadMe.md b/UnitTestFrameworkPkg/ReadMe.md index d6a3e0c15a2b..d28cb5cb0a5d 100644 --- a/UnitTestFrameworkPkg/ReadMe.md +++ b/UnitTestFrameworkPkg/ReadMe.md @@ -59,7 +59,7 @@ reviewed. The paths to the SecureBootVariableLib unit tests are: | Unit Test Source Language | C | C++ | | Register Test Suite | YES | Auto | | Register Test Case | YES | Auto | -| Death/Expected Assert Tests | YES | YES | +| Expected Assert Tests | YES | YES | | Setup/Teardown Hooks | YES | YES | | Value-Parameterized Tests | NO | YES | | Typed Tests | NO | YES | diff --git a/UnitTestFrameworkPkg/Test/GoogleTest/Sample/SampleGoogleTest/SampleGoogleTest.cpp b/UnitTestFrameworkPkg/Test/GoogleTest/Sample/SampleGoogleTest/SampleGoogleTest.cpp index 94cbf2cf0b3c..a39a86fdc30f 100644 --- a/UnitTestFrameworkPkg/Test/GoogleTest/Sample/SampleGoogleTest/SampleGoogleTest.cpp +++ b/UnitTestFrameworkPkg/Test/GoogleTest/Sample/SampleGoogleTest/SampleGoogleTest.cpp @@ -229,7 +229,7 @@ TEST_P (MacroTestsAssertsEnabledDisabled, MacroExpectNoAssertFailure) { } /** - Sample unit test using the ASSERT_DEATH() macro to test expected ASSERT()s. + Sample unit test using the EXPECT_ANY_THROW() macro to test expected ASSERT()s. **/ TEST_P (MacroTestsAssertsEnabledDisabled, MacroExpectAssertFailure) { // @@ -242,14 +242,14 @@ TEST_P (MacroTestsAssertsEnabledDisabled, MacroExpectAssertFailure) { // // This test passes because it directly triggers an ASSERT(). // - ASSERT_DEATH (ASSERT (FALSE), ""); + EXPECT_ANY_THROW (ASSERT (FALSE)); // // This test passes because DecimalToBcd() generates an ASSERT() if the // value passed in is >= 100. The expected ASSERT() is caught by the unit - // test framework and ASSERT_DEATH() returns without an error. + // test framework and EXPECT_ANY_THROW() returns without an error. // - ASSERT_DEATH (DecimalToBcd8 (101), ""); + EXPECT_ANY_THROW (DecimalToBcd8 (101)); } INSTANTIATE_TEST_SUITE_P ( @@ -266,6 +266,11 @@ TEST (MacroTestsMessages, MacroTraceMessage) { // Example of logging. // SCOPED_TRACE ("SCOPED_TRACE message\n"); + + // + // Always pass + // + ASSERT_TRUE (TRUE); } int -- 2.40.1.windows.1 -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#115230): https://edk2.groups.io/g/devel/message/115230 Mute This Topic: https://groups.io/mt/104212833/7686176 Group Owner: devel+owner@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [rebecca@openfw.io] -=-=-=-=-=-=-=-=-=-=-=-