From patchwork Sat Nov 20 15:03:59 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Fabian Stelzer X-Patchwork-Id: 12630433 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id D90C2C433EF for ; Sat, 20 Nov 2021 15:04:23 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S237575AbhKTPHY (ORCPT ); Sat, 20 Nov 2021 10:07:24 -0500 Received: from mail-am6eur05hn2201.outbound.protection.outlook.com ([52.100.174.201]:55837 "EHLO EUR05-AM6-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S236770AbhKTPHU (ORCPT ); Sat, 20 Nov 2021 10:07:20 -0500 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=QJUaZo9vpYc/M2S+e42uiJAwlcDynIOCCWNlFi4bRFOKMva48QKGLTbl/RKKwbVvF1/hNc/uZ2UMNlZoDXYmyrU1Wu87NpWk/MBgEwjzP3P+uqOOA9sQHw6rzZAf3Y4pMNK8+CrOKjajr2Gq+n+wLh1Oj39inaLODLzRfa9/ctbuKlZE5oxl3afTDG5RrVDehXEia0a4WAQAJP5ZjvdNVUXXBG/iZz9xLemrmhE1O7IXWHNJXIPPF2Sl1b6wAlhPSsk+y0lhVzJ05G1HYCguG2ena8wPLvSfVAUaUTBdjs/WSM06AUao01AGAu+Sf2rjLYR4sukTanAzb5abc/98dA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=m4CODN1keFMLJ+xjhNOpdxv+3vbb/yspcqqM6AA7LDQ=; b=Dhbjc0iVKvY1e+rnOoErhy/d7W0WmbVlLx5IuXBaRirFdRkwrujdDIFJHas3qojW4/C91BAE2xsmkrU8jGI9EdYyz9XytM+PK5YJ5qI1fmOF5OdYhyrA1+61GQGEHZ03uMKp1GTfcBqYtUgZvk96pjGrvZpcRex8F4hN22Q6HcQ3Nm7nV6xxAPuhPkRfeFpgZGNHpAYktPtmBDQENq0+diC2tJ1frvMtZSI7FCy0S4hqiWbaGsQUefAgQvsNjaHMh1CFUIQMJlQW/imt51N/yZjwUtrvvobaYCO64/9Kt0NGcNxV2x4brtGeFDouGoM5Nx0gwTBc2Ns0FhyLaiunsw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=gigacodes.de; dmarc=pass action=none header.from=gigacodes.de; dkim=pass header.d=gigacodes.de; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gigacodes.de; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=m4CODN1keFMLJ+xjhNOpdxv+3vbb/yspcqqM6AA7LDQ=; b=HywG/x/ZJ7N67j/WZuAbyrFELIQRdxdOwvN9a4kmQQfzBux7FR9GO6xKhp2Xg+xZBECDdjbio6WxuKeJXMlwhHMux047zuO6Kp+UjQr6fey9G6whYsoAdLcNTU5v6LJBtdqP7CTChkzrYWxXwTlnkVfIdhoRnyl/tWqTzaRbf5E= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=gigacodes.de; Received: from PAXPR10MB4734.EURPRD10.PROD.OUTLOOK.COM (2603:10a6:102:12e::15) by PAXPR10MB4799.EURPRD10.PROD.OUTLOOK.COM (2603:10a6:102:156::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4713.19; Sat, 20 Nov 2021 15:04:13 +0000 Received: from PAXPR10MB4734.EURPRD10.PROD.OUTLOOK.COM ([fe80::f9d5:61ab:5756:b391]) by PAXPR10MB4734.EURPRD10.PROD.OUTLOOK.COM ([fe80::f9d5:61ab:5756:b391%5]) with mapi id 15.20.4713.024; Sat, 20 Nov 2021 15:04:13 +0000 From: Fabian Stelzer To: git@vger.kernel.org Cc: =?utf-8?b?w4Z2YXIgQXJuZmrDtnLDsCBCamFybWFzb24=?= , Adam Dinwoodie , Jeff King , Junio C Hamano , Fabian Stelzer Subject: [PATCH v3 1/3] test-lib: show missing prereq summary Date: Sat, 20 Nov 2021 16:03:59 +0100 Message-Id: <20211120150401.254408-2-fs@gigacodes.de> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20211120150401.254408-1-fs@gigacodes.de> References: <20211117090410.8013-3-fs@gigacodes.de> <20211120150401.254408-1-fs@gigacodes.de> X-ClientProxiedBy: AM6P192CA0001.EURP192.PROD.OUTLOOK.COM (2603:10a6:209:83::14) To PAXPR10MB4734.EURPRD10.PROD.OUTLOOK.COM (2603:10a6:102:12e::15) MIME-Version: 1.0 Received: from localhost (2a02:908:178:20a0:d22:c58d:d0a4:a83a) by AM6P192CA0001.EURP192.PROD.OUTLOOK.COM (2603:10a6:209:83::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4713.21 via Frontend Transport; Sat, 20 Nov 2021 15:04:12 +0000 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 20fcca0b-b56e-49c1-dac1-08d9ac37036c X-MS-TrafficTypeDiagnostic: PAXPR10MB4799: X-Microsoft-Antispam-PRVS: X-MS-Oob-TLC-OOBClassifiers: OLM:1850; X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: igPzVupZu+DAyGoCjFJfWYHuTJZvPEPRWEitOhEN7MDjrOEJOW5PN6k7jVMmVEbpkVqGL6/1or3Iaz4t14Vu8NGKgDy39mw5EzTwtSGsEgg5rRNBDNLqDvopulNygFSULdnqMbP4+wErGhL8MMVDmxt/fn6IQ/KvRnww5Cwtp6lKB8JHI73/lPucgLLSVtyt4LmNfqpcN1jezxG49OgIZ/zTtcmtLjQVP7kZ0yp6nRIRvKH2VcthK7OFZXN27OZxUk6DtpY/mORZDMtl72tsYUqml+gJjWaCwBlIQSEGjhmFM9RYd6fWN87nS72A4p6CKXame7PPX70Rr2aeeXTCJp5VCl1B6h2IpF9Mxxcq9oskdBjq/5J6r8xwMT6Jcu6Agddv0pSJ7o+WqkSoWtZ/xgxZe3DMGrmAd+PqJDwt6lnZBuhoma2aqQHIp/GOBXbrafl7Tejck4sBOnOUE3dMdMdGVOHj4PXu3Bq9stxrEaLj+9oysh0UxjX10oYpMmBWwPT8zFeruO9u6I7tkZzF/asZkDpGTAj0F0H3b39WD6rey7uhAsGI09YPwS6lsbwHdx/6CT06DmQAd29S+IMxv9oid+qAb3soBSMCRaRt6GElaGrS1RYW53dF7URbKVIZ0ACnboJr78RqNjhI2E7VSM5GUcGtIAILcBxQgpZsCqNrP3n15jehNayibe0ygOHHQz05J+wbUPsrEo4LkvKvhFRgr8OxpIaWbFlKw/jRJkowncprzsxB+Q7i9AhTT26GbZS9yXgzmh9dBUjFiYGalCKHIPS2OpDYFYJGpUActpmMUG9cbeVFfiXT042FIkr9QKeh/HQDWMOe9zIr/h3wt5kBrp/LKDm0y7o8nwkPIjBecyvkRry8lBwBaokrfysmwgtIU9sfmzS8PXuPWBK27tYZxZGHbjus0EL/gUku7z5OJ3LdlmNI0z2suBcT9WUeAu1hkCU0/eA3Hbri512TIDlDK4zMqaDuMeOwLooNzog14BeVTqWGG1Y23bgwUKLqOt/Fuy76QFvn/hRafah/mQ== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:5;SRV:;IPV:NLI;SFV:SPM;H:PAXPR10MB4734.EURPRD10.PROD.OUTLOOK.COM;PTR:;CAT:OSPM;SFS:(4636009)(346002)(136003)(366004)(376002)(396003)(39830400003)(6666004)(107886003)(2906002)(66476007)(316002)(6486002)(2616005)(83380400001)(66946007)(66556008)(186003)(5660300002)(38100700002)(36756003)(8676002)(54906003)(4326008)(6496006)(86362001)(8936002)(508600001)(1076003)(6916009)(52116002)(23200700001);DIR:OUT;SFP:1501; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: ebFTc+rThYkKxQLo84xRJpjG7vhyTmKaMBvDgAvK/MpgV872qZ/40NPzEYMvX5rb3WhyLgOsYhxazdcvrXSXN2umSZfGRgXcmtH2+r1/99bp8XkzD6XPJY7iJt/AscMWX+dZ09kb3AHNDNkUmmonJ3ZnSOAKNGibZWvqWU7hf3rzpr4onCvZ+AiS1MfpU3WTG/xZODWaX15Vg8Nusk5tl/fZ4N57VKcDXALTYgavYhu2xqEuh4AFuE1l+ioWKSXp6cWwHp8lw63gAySsLyFrzJckZyBF/1oqTydDcj9ObzNmVGiZKbxAREVB6+ai01tYsMnXtlLRRpOUbjV2DpnYzAMx0n6iiuoTQr/xBcdCv31vDycTMSRntZq6EnNS8qKETCvmC6DdkmLdclAXBm6H9icAqARyHrQ6E+Ot2iqR8hFRIvzg6omVAx7YkkK6p1Yz7PYepvxsJeMseHFFAFLB/CMYhCWnFUTBA1Wsrj7sQFUHQx909UOCOr/FxFw2TEv8/vs1JVcVHgmxr+qPLEwB0IEd6CZaLdzIJB/NMOQ3HAwjQotEC8VXcKaOpc4o7vbMFnDHp8rwSOXD6k+Ht52NjuAGTFVi/grUpweLcSAQ0rEytOliWIpJE/77+jj9bKathY+8x7k3mu+O2GOfUlC9vw1bKy8qZuZ25pCgUv308KvtJnthdHnsRWJmxCT+yXteXwNEzLSFZLmCfB2QUghkUPikeZLDpDEqAfMrK5KMU0LkuZy84PHzpQkEHNS+lcCUBC9NnhAkt8OQ56LDxWGbcn8k3WEHfDFCC5B++e7BWErg2WiKsaZhKpXhlAdYzv52Tr88t6rmLQ5XKoBp7n41h8EsgEK3HPjyvSdsNnQwpJDE+Qn75IgLfPSlZwpEpFBxd6mPBDhK4ux9WF4Soz/t3qpUlzmuy6wy7SeTzNj3fbCeM4yRMjOZwSDLjSGRRGQ3isfs/+T3DdVDfZZY4jZtNQHOFxCmlLgcIUt5beZxcn6l3nC3GTRGgnAXaP6kS/T8YMvDtoA5dEckichm+3kSIGnBDhbtQQiPdF+yUji3Ebo10IQnqNXL1vF1uMVDuaj/XmvpgQWyem0hdZ9UhOh8nYRzRsUOequufs6z0R5hDoSwl6Z8CAI8yaOnpRNv98x4MPnmug4GeTlIxnZb+evueU6z2aoQ/8RmiNwc7i/OAQfvWRYwigcjyKKawDEelNOjz+RFi+U1E4A4fG84DdQAHRdkuu0fegRwTgVJ+0G/lG07P52aHDs6LjsyMgmkm4zhQPt4m4ZJn5AsC3lSC2XCsGc0bIirS5iAGuZ8Px9ewRZz28mHYI9UygeGyiXBbo/qWOH369f4A5HEqaZXSRxuPLukfl3/qHKpEGlCgYAxBlgQr482cJ7mcmsSuKF1a9qPoAyhU432mmvbKyf4Yd6Fp3nUklQgYBjxmSc5UO2/b34f9/jTSUvSpvvFNJ9Fy1cmKQCxmpjicQ19uVAOktqV8dKjtQm67EM74zP1y8FskeL9xY9FEsbMWWP4QmuVuIm69+VVKXcIK/sYY7saAArZkRwbt/utQbPgYsN5DK4VTxjQl0Kckt+z8hmqSAPKOQKBB+Yn+m8Udj3vg2MNlxf19YGMDdQPNzhFPROLMPWudDtJF4QT+f8I3lP1mfb2XC+gug7KAp+ivO8aWp9puTmrN4LE2EVoJQUDDq+oDDNfOuryuzU9SFGOrq9NaKXMx/4a5TV+njHKSyRHTPKeHn9CAA== X-OriginatorOrg: gigacodes.de X-MS-Exchange-CrossTenant-Network-Message-Id: 20fcca0b-b56e-49c1-dac1-08d9ac37036c X-MS-Exchange-CrossTenant-AuthSource: PAXPR10MB4734.EURPRD10.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 Nov 2021 15:04:13.1315 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 80e41b3b-ea1f-4dbc-91eb-225a572951fb X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: 4XZwbakD2cfR5oj1rDCnSSAJo8KJv8DCtf49TXs4AmYdZnRWSQN5xdq/0LHnVC0epOlDBhp2/kVYIobEWFBS7Wc14s28bX9A1cv/7J6/heU= X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR10MB4799 Precedence: bulk List-ID: X-Mailing-List: git@vger.kernel.org When running the full test suite many tests can be skipped because of missing prerequisites. It not easy right now to get an overview of which ones are missing. When switching to a new machine or environment some libraries and tools might be missing or maybe a dependency broke completely. In this case the tests would indicate nothing since all dependant tests are simply skipped. This could hide broken behaviour or missing features in the build. Therefore this patch summarizes the missing prereqs at the end of the test run making it easier to spot such cases. - Add failed prereqs to the test results. - Aggregate and then show them with the totals. Signed-off-by: Fabian Stelzer --- t/aggregate-results.sh | 17 +++++++++++++++++ t/test-lib.sh | 11 +++++++++++ 2 files changed, 28 insertions(+) diff --git a/t/aggregate-results.sh b/t/aggregate-results.sh index 7913e206ed..7f2b83bdc8 100755 --- a/t/aggregate-results.sh +++ b/t/aggregate-results.sh @@ -6,6 +6,7 @@ success=0 failed=0 broken=0 total=0 +missing_prereq= while read file do @@ -30,10 +31,26 @@ do broken=$(($broken + $value)) ;; total) total=$(($total + $value)) ;; + missing_prereq) + missing_prereq="$missing_prereq,$value" ;; esac done <"$file" done +if test -n "$missing_prereq" +then + unique_missing_prereq=$( + echo $missing_prereq | + tr -s "," "\n" | + grep -v '^$' | + sort -u | + paste -s -d ' ') + if test -n "$unique_missing_prereq" + then + printf "\nmissing prereq: $unique_missing_prereq\n\n" + fi +fi + if test -n "$failed_tests" then printf "\nfailed test(s):$failed_tests\n\n" diff --git a/t/test-lib.sh b/t/test-lib.sh index 2679a7596a..f61da562f6 100644 --- a/t/test-lib.sh +++ b/t/test-lib.sh @@ -669,6 +669,8 @@ test_fixed=0 test_broken=0 test_success=0 +test_missing_prereq= + test_external_has_tap=0 die () { @@ -1069,6 +1071,14 @@ test_skip () { of_prereq=" of $test_prereq" fi skipped_reason="missing $missing_prereq${of_prereq}" + + # Keep a list of all the missing prereq for result aggregation + if test -z "$missing_prereq" + then + test_missing_prereq=$missing_prereq + else + test_missing_prereq="$test_missing_prereq,$missing_prereq" + fi fi case "$to_skip" in @@ -1175,6 +1185,7 @@ test_done () { fixed $test_fixed broken $test_broken failed $test_failure + missing_prereq $test_missing_prereq EOF fi From patchwork Sat Nov 20 15:04:00 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Fabian Stelzer X-Patchwork-Id: 12630435 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id DC6D1C433F5 for ; Sat, 20 Nov 2021 15:04:26 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S237574AbhKTPH3 (ORCPT ); Sat, 20 Nov 2021 10:07:29 -0500 Received: from mail-am6eur05hn2201.outbound.protection.outlook.com ([52.100.174.201]:55837 "EHLO EUR05-AM6-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S231660AbhKTPHW (ORCPT ); Sat, 20 Nov 2021 10:07:22 -0500 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=jdj7insMPcj7BNq+up1ZzZm+fqGK7mTX9JmLCK3zwfhlZ1mxVDeK1zwVJqFWBG40cgjzEAvEvrZjy03PSbUFcSnjw4ghea0smxzuYeq+7Y17eklpF5Bfm6dMkFLCCBqW9gdSFXpJIgwwN4b+LuEFuOdScpHhD45KFXtucqnODdrXues7gWL+GBFYE5PMioV2p3ZHBRQvdVgwhHXp2cGstWOzF3aIzNAvo3I7v/cB74JJfg631bYXhOt1Zj7w6+RLiSLex+R+SZww3H94pLaT4mWZv9m/30/KJZ97wTiEvbNEON11TXUwl6RLDzyBLqObgToumRLjE3bsThs/OSDVWw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=hTQZyVr/Mt4izHFXJqibmSEaAVZQTx/lcFbp4gqVu3Q=; b=hMMP3dugLk5jUZRnDTR6xpnuZ6XpUdFQcZP+ve0Ad5NP/OA2OO3IGEF5Dyrn7V8yIwuhbbkiLR58rVDw00CwUgwiF0ogjM6vEvVcBePOZ5hyDNrehyZeVqmsdqXAwp2A195izyfWTEHkh3Rc0azQ6plftXV96mByry7GfFxIvy/RhQ1brVqdsfe7hjpJKbYlq1K4Gfff3htTucOGdYetqGLz6YDq8AyQIlsrGiahYVjQ4evz+nd8OnZYqS5JP9+UbcmT8KLkZmKjFw8PFzmhQi0YNLIfIN7M/+omaTQQPDGUUUW8x9P+6iZ5deopLsyzfU7VhTiDULbtTl2Z0rH/TA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=gigacodes.de; dmarc=pass action=none header.from=gigacodes.de; dkim=pass header.d=gigacodes.de; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gigacodes.de; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=hTQZyVr/Mt4izHFXJqibmSEaAVZQTx/lcFbp4gqVu3Q=; b=AftIcbSW7+I37hgLarWNV/Pb1jVsVRg/IenwsmjEBT7nKJw4MREisr5G9jXNuXXVTy4MqmyX9Kr47JkhJlkDJ3a6Q+O6DIi6HF/qwiKW7LSTfNd+sXkpZ3alxgMxKHrcYOkBRpZAmFxTvoKEdFOR4ujHqvlF/EDXi6mH5MYVUus= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=gigacodes.de; Received: from PAXPR10MB4734.EURPRD10.PROD.OUTLOOK.COM (2603:10a6:102:12e::15) by PAXPR10MB4799.EURPRD10.PROD.OUTLOOK.COM (2603:10a6:102:156::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4713.19; Sat, 20 Nov 2021 15:04:14 +0000 Received: from PAXPR10MB4734.EURPRD10.PROD.OUTLOOK.COM ([fe80::f9d5:61ab:5756:b391]) by PAXPR10MB4734.EURPRD10.PROD.OUTLOOK.COM ([fe80::f9d5:61ab:5756:b391%5]) with mapi id 15.20.4713.024; Sat, 20 Nov 2021 15:04:14 +0000 From: Fabian Stelzer To: git@vger.kernel.org Cc: =?utf-8?b?w4Z2YXIgQXJuZmrDtnLDsCBCamFybWFzb24=?= , Adam Dinwoodie , Jeff King , Junio C Hamano , Fabian Stelzer Subject: [PATCH v3 2/3] test-lib: introduce required prereq for test runs Date: Sat, 20 Nov 2021 16:04:00 +0100 Message-Id: <20211120150401.254408-3-fs@gigacodes.de> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20211120150401.254408-1-fs@gigacodes.de> References: <20211117090410.8013-3-fs@gigacodes.de> <20211120150401.254408-1-fs@gigacodes.de> X-ClientProxiedBy: AM6P192CA0036.EURP192.PROD.OUTLOOK.COM (2603:10a6:209:83::49) To PAXPR10MB4734.EURPRD10.PROD.OUTLOOK.COM (2603:10a6:102:12e::15) MIME-Version: 1.0 Received: from localhost (2a02:908:178:20a0:d22:c58d:d0a4:a83a) by AM6P192CA0036.EURP192.PROD.OUTLOOK.COM (2603:10a6:209:83::49) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4713.19 via Frontend Transport; Sat, 20 Nov 2021 15:04:13 +0000 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 54006847-9a95-498d-20c0-08d9ac3703f5 X-MS-TrafficTypeDiagnostic: PAXPR10MB4799: X-Microsoft-Antispam-PRVS: X-MS-Oob-TLC-OOBClassifiers: OLM:9508; X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: rYQnHEW9AO62UG9EEJrc7A/5LPPG+p9qmGbBBZuTRTI80kkI0uK/0w+6Koqn1vRB8IAl2cgUPNUvrVlxrG4evjqRFztlAq6VoEoIScx2b9ByyosXao7I429/5mHJuXMWSgI9Mv8u2GHk8/upGVUtgMhfSUmc3HwWEo/0PrqSdhmM0GFxGQCQ1og4oS7r2OsP6OUQOtdQ/wsoRou4frP11UeYEZL2gyb4kIlWN0Z3p0UyFErX8WWpHogYhi59SSgk2dy/Iwd9NHCFWJ6rwd5uBHo002PT4eYHJ8aLkVXBKcGC2sLmFx760u6k/5TWw8DZQwC7NJBKtjgJmwOIthiKt/GGkXw/CVvyzqbrqWlBKeJr+V7GhNR6WAkZI5NqStb+3ts8RTZwRIdBjpZpM+n81RjsMNEQWlp155Lzguu/IzUifMGWiZEhGo+SIEGTQ/fGePzSrdYDjLelCHnXEGmVdMBTW0ImHkkcxcLXjYOzJ0RGhwkXmPm1KFXJAD8MEhBT9m3y2Jewt5RQccfr4pYIuZcq206RKCETNHSy7uuCK6jZ4lgef/xicF8ehssMaJKHNCRwGTEDeh5nLZRuK/9e8BwGNyklg3W2/PxDernRPoyDw3NjJPQ4/YGtaqz1eidKMTA92N5sHofsZvVloQ27626AoGqdSn97hWWjBACiB1ey1MQV2Tt7zEdpDEXAEv9a3V/j6dNAwYomq/nuWycLjPMrd06fcgkV7SVK/MX/c53deNH8qtppQ4spdeTCR9px3s9EAQrBHUWHKL+tas9o+OD8ewz7Fl3WMLlMl7gYKzuQeqKobsGvEbTX0u9iQ02Oy0oWEDjSrI8c0g3OMgePX6GVYNhPRuXXwlOD/N7bypsHDVuORjuKkJto8JSOtv8vMhTq0SyA9NvtPJrwrCoNM1u+G2UC8l4vIEbBayQhPkHrukyGbPynM7r4HQZNl/rZwcuyYeYEZwar8PyMSUrF3CDDtoWD0pwwUahjU/ArwVbRxZvfQQmpmnMq87tR/2cK9UpA76lAJniDfgbLHA6GoQ== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:5;SRV:;IPV:NLI;SFV:SPM;H:PAXPR10MB4734.EURPRD10.PROD.OUTLOOK.COM;PTR:;CAT:OSPM;SFS:(4636009)(346002)(136003)(366004)(376002)(396003)(39830400003)(6666004)(107886003)(2906002)(66476007)(316002)(6486002)(2616005)(83380400001)(66946007)(66556008)(186003)(5660300002)(38100700002)(36756003)(8676002)(54906003)(4326008)(6496006)(86362001)(8936002)(508600001)(1076003)(6916009)(52116002)(23200700001);DIR:OUT;SFP:1501; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: KbGAdaJAMnMJoqtsOaWFvItmsvhHn85wZQB3tn8/32hxlCDfrI1TAn4HTxI91h42WHjs0QtIMa9t/R53CjJUV9xXklk0yWe82/w7w3OplOdb48xAxlajG5SCbSz12OpIj9jebDazcILYnauKBRpKUuO3DEftf5wN4hGCXXpzJjDvu4IRrITSIRDFWDr9cdI68sXJ6nfv3eaqqm9hLkVQ5i0lrSbHzEpVSKhGc2knhjl0PTmSPY5Q98unyiP6LNgA/2jABqBCkAEeL8sK49cvMJIbRKFkToS5ZHRTlD/P/PrQBdOavxgAPzehpbDJmSs6Kf99fB99bKjIf1AiOyG/bs8ThrwnNb8QA9i9GOfsNN7YKjKpxlhZAPUi7CXSdkkgz2eOL/U7VGq3Y3skgakPoi/k3Nb3++9QMkOlgKEn32tTbAq26ozrzYDOcayC87fj9HDM1pnjbXKo4tjvFKLBO9Dz/bHmM1lg0gyJXO84wCi2N+zuRKqDsn3xUbmTUpFoBdn/KtfVHAfXloN05VlyXt2ITxrCd9MIaNjBy8KVrSyDYn3GN5uuUeUHnBpnzaycpHUMUdnCARbkzGCKQzR15fa8Gz+TIisQY/K/DmvNQvU977aJdlvkhPAuvOlUMy4KModTw4Z2GsoeFTL9Huw3NNCMVvlkiB50Tv5NI5nLGEOcViJrbmoBufYalRaRxQokfStDDRCfOU4T15Kr6lzWE7mEp8I/P1pPvIJHbxLneJMsz5mH083Cdj5Dqncl/wAnA9nC2GEkxOt0iOxVnnLDpWYEUx+fgIZUhsVHGjf2My0aYQ9yRvdGQM4ya63ag6/aD1tAvRFW/L7tR/kwhLYb4gfa6BbdzjcuG9O8vGCP+v5DYSS7bAkgMZ/eK7v8VvC/fhOhgxN6M1br22Q9yy4xm2ELl4sNYcR6xEjpGIExnfIPsKsHk//5jjaR/356/3SGATXNvsOMBP+GanFWKM+p00BF8pyAsdHvLR40xxSsdQdz/aObfCdwBQ2ntvCEhKzllHyaF8AqbCRu8Eg5EturL9pMCHpKZqx2I7P/dPWqJFZlqlPl4ymb/KcsTBwNIPv0EiIUTgZedtpOM9TRf/T6kXJ+Js8e0CTdCFByOLPLg8hFfeP5S/oxdQ1sq90vgsz69Xm1zPw1EAUYtLP9krLd1/5VGUMLqzm4mw3MDzgeWJXr5xp/wLmMBtT9gn9DkQoxAhs03mwIViUsSCmHRLU2N88IhgnWHALkotr4XWF4AptEXe8u2Rck0OyVwX8IXUmFfbu6Od1O0e6SO/dzi7PKKD/Kr37aF4x32tE7SrKo2kEHGz36C+/peKfOMRCjoLJbRRMsb/lKiLSSMy0dRPxTLJLXtWO3o1AbOk9ctOiJCSxNc9lRwEIr63i0jIsRzznLX7Q5MZUlX8to778l14eX5eZEJUCOlsx9681O0N1nFpPCDNo5CSvZ0+2Q07QB94gDNu33vPr4d22jg5Y9X7q70lU/kLoCT/sFYsbElWmSLnSio02kggmEmp/ZNogIAAiOnDrdOvY4A53zKrljK1Mv2OOgv/cvWog4ScI5Q11Fb7lv6dmI53YWYwjI+IwzvM6ea6891grxQ5dX+EfjHFl6jfw9x6sK+oEEu5VMuK7SxTk0r1DSE5XS004HDWS7An9yrdLdWx7tB0DsarNaRiwd4fGwZ5aPE8INvKzCCdjWysh9CetmqZXnzBk3mgygjSKiUh7AJ3iRD/G23bx6O+itHw== X-OriginatorOrg: gigacodes.de X-MS-Exchange-CrossTenant-Network-Message-Id: 54006847-9a95-498d-20c0-08d9ac3703f5 X-MS-Exchange-CrossTenant-AuthSource: PAXPR10MB4734.EURPRD10.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 Nov 2021 15:04:14.0097 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 80e41b3b-ea1f-4dbc-91eb-225a572951fb X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: DqwcKyZgB/Q5XcWRV2tbnjXSQggxIuuUId0qW4XzVHKb+e2K0w+R9ObcUHOTCEL/2odyK8/5LDtYa18KdbhgyMKxdohHVzE7ovFy4yJakWI= X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR10MB4799 Precedence: bulk List-ID: X-Mailing-List: git@vger.kernel.org In certain environments or for specific test scenarios we might expect a specific prerequisite check to succeed. Therefore we would like to abort running our tests if this is not the case. To remedy this we add the environment variable GIT_TEST_REQUIRE_PREREQ which can be set to a space separated list of prereqs. If one of these prereq tests fail then the whole test run will abort. Signed-off-by: Fabian Stelzer --- t/README | 6 ++++++ t/test-lib-functions.sh | 11 +++++++++++ 2 files changed, 17 insertions(+) diff --git a/t/README b/t/README index 29f72354bf..2353a4c5e1 100644 --- a/t/README +++ b/t/README @@ -466,6 +466,12 @@ explicitly providing repositories when accessing submodule objects is complete or needs to be abandoned for whatever reason (in which case the migrated codepaths still retain their performance benefits). +GIT_TEST_REQUIRE_PREREQ= allows specifying a space speparated list of +prereqs that are required to succeed. If a prereq in this list is triggered by +a test and then fails then the whole test run will abort. This can help to make +sure the expected tests are executed and not silently skipped when their +dependency breaks or is simply not present in a new environment. + Naming Tests ------------ diff --git a/t/test-lib-functions.sh b/t/test-lib-functions.sh index eef2262a36..389153e591 100644 --- a/t/test-lib-functions.sh +++ b/t/test-lib-functions.sh @@ -680,6 +680,17 @@ test_have_prereq () { # Keep a list of missing prerequisites; restore # the negative marker if necessary. prerequisite=${negative_prereq:+!}$prerequisite + + # Abort if this prereq was marked as required + if test -n "$GIT_TEST_REQUIRE_PREREQ" + then + case " $GIT_TEST_REQUIRE_PREREQ " in + *" $prerequisite "*) + BAIL_OUT "required prereq $prerequisite failed" + ;; + esac + fi + if test -z "$missing_prereq" then missing_prereq=$prerequisite From patchwork Sat Nov 20 15:04:01 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Fabian Stelzer X-Patchwork-Id: 12630437 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id 881FCC433EF for ; Sat, 20 Nov 2021 15:04:28 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S237577AbhKTPHa (ORCPT ); Sat, 20 Nov 2021 10:07:30 -0500 Received: from mail-am6eur05hn2201.outbound.protection.outlook.com ([52.100.174.201]:55837 "EHLO EUR05-AM6-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S237584AbhKTPH3 (ORCPT ); Sat, 20 Nov 2021 10:07:29 -0500 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=N98k653dk3BeNNUyndP9yM0SKBfua2Aa484jhW6OqaKd7LHs6pN9HzXiF7HCxE8xmTgQZPjIMUAyprAhv3HLz1YJCA7IbofbDyFaZlyZpzzUasqjNP9DI5DxlZz2vgu/IHGY5tAxLw/poDpRWH93Ac8TWfQqykTGZA5rFn19M6oCl/j5PEU9to1F4akKijPn+s53pD52XreCR9i08uP65nNl8VErtddvF1EWi0K0o93FIqdHARhSV9O3i3c0+/HCrbDPY/OHo0Mg1GKTR9p7ZKjRkuaibwbjp1l9jbtYgxqmsW/+IDrT2zs4j7twgd9yJDm/kIV9+LVCvL1jRasDgA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=5LgFaoN6FCcupxPfPI5EUtDz4GucxIjm9Gepow4e8Hg=; b=SvXLmikiwPJppyzxbn4qZGveW0Ynii7bRuDsxpUwvhwu6Pi96OLEDJvRZYETmywbkpUDCeL5kUpY5nprY9v9NzynHeNkanX6EpttD8fSrgoTUN9pjLaHU6MzAM8ozxEkVGIONTv0VpdXWpTzVYWkl8zGT7cdUorMCMWBrdQKTg/QtAkCpJ9LbAqdmLt7PpPnqztuYC8sa2geggbnl4H3EClBopWQOD7hJIrQ+9EKXCRCSECzM1oRqR7eiKI8Mx9kXj+JzyVhF4IAiGdaOLBT/lLuH0soj+HAjk8FCry8eaYqyKAnIqLZ0T4A6zWBQw/pK+tN4H9uRZV6J7EmbN9fcw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=gigacodes.de; dmarc=pass action=none header.from=gigacodes.de; dkim=pass header.d=gigacodes.de; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gigacodes.de; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=5LgFaoN6FCcupxPfPI5EUtDz4GucxIjm9Gepow4e8Hg=; b=XQp0DdcLAPLKnlcH2SbRW1N5tTmd7zm/a2I34U0NnWGojzJdkD8i65o+lM1f/5xkhgR5+J94xtdquGf8ue+mfYNgjmRj+Ax1gs9vMxOnv2mI3BkVYc32YyPfqzRftkv6Dga4P6GCgjhxM62jqjoRtbRQIBDwFSJbMfsN5cy4z6M= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=gigacodes.de; Received: from PAXPR10MB4734.EURPRD10.PROD.OUTLOOK.COM (2603:10a6:102:12e::15) by PAXPR10MB4799.EURPRD10.PROD.OUTLOOK.COM (2603:10a6:102:156::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4713.19; Sat, 20 Nov 2021 15:04:16 +0000 Received: from PAXPR10MB4734.EURPRD10.PROD.OUTLOOK.COM ([fe80::f9d5:61ab:5756:b391]) by PAXPR10MB4734.EURPRD10.PROD.OUTLOOK.COM ([fe80::f9d5:61ab:5756:b391%5]) with mapi id 15.20.4713.024; Sat, 20 Nov 2021 15:04:15 +0000 From: Fabian Stelzer To: git@vger.kernel.org Cc: =?utf-8?b?w4Z2YXIgQXJuZmrDtnLDsCBCamFybWFzb24=?= , Adam Dinwoodie , Jeff King , Junio C Hamano , Fabian Stelzer Subject: [PATCH v3 3/3] test-lib: make BAIL_OUT() work in tests and prereq Date: Sat, 20 Nov 2021 16:04:01 +0100 Message-Id: <20211120150401.254408-4-fs@gigacodes.de> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20211120150401.254408-1-fs@gigacodes.de> References: <20211117090410.8013-3-fs@gigacodes.de> <20211120150401.254408-1-fs@gigacodes.de> X-ClientProxiedBy: AS9PR06CA0053.eurprd06.prod.outlook.com (2603:10a6:20b:463::15) To PAXPR10MB4734.EURPRD10.PROD.OUTLOOK.COM (2603:10a6:102:12e::15) MIME-Version: 1.0 Received: from localhost (2a02:908:178:20a0:d22:c58d:d0a4:a83a) by AS9PR06CA0053.eurprd06.prod.outlook.com (2603:10a6:20b:463::15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4713.19 via Frontend Transport; Sat, 20 Nov 2021 15:04:14 +0000 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: f37e792c-711e-42a4-263b-08d9ac370485 X-MS-TrafficTypeDiagnostic: PAXPR10MB4799: X-Microsoft-Antispam-PRVS: X-MS-Oob-TLC-OOBClassifiers: OLM:4303; X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: XzRE483nedJLKKO+zXwLQk+wbDXupPd13Kv5IpkbjvE/UYX9A6UT6fsbHWHgF6YL2J2hZQa+Ry/KLGlaLAANyW21Cq5laca3pO86h570Km4+burxgT7VHcfVaSBrhrADe/vm7Dwk0JapCdiTLAmm3m4SDJmn1kedQGXSbVVN51msZJ4PhN6zmFHNgGJcGtKZkw+qTcHPlnxC9Ank/0XLG3IsF7GYDLZ3DwXTRUwur6PG4hGmVfAbQp/UXRI5HAHFEprt5twDMVXqN7tV1yKEEm/372GFTaeP6+n/Qrb7I1w+zKdFtNQUUj7N43h+LhTDvK/EjhWp4aiRsTP0kGUm+xUEach7CUlclal6A/DJJW+Gt9ZCDFQjNXo5okM1EV8Uut/x/rrklAZzuDVV+YPYi+KY50TILSK+ENOuodkSCt1D/ibuTkfz98nP17jUROrpdrzgPvt5bMT0SnPkZhB+52I+09NM1Y4ce+WKRO8pxiR/xOFP3T9KW6n6vrGlisK+vJhFeAeiuUX+y7dGab+d8zHRFE97xVFJ7knlZaRkjo9X75HwOIYrXDOEwDQ09FW2KXkquT6LiMeyiucBSWdwtrdcbwryXRXYjv7A6GLZ6r0fiiqIwb8ZiVv6CxCe2D9CVGe81jcYLcyOCKU/iGR2X1JgFVbOeXtWIGGSgsS8TCuEWIGMrSjgy9GSstYfFgezRmPl+anyty2hq5wfOv+Q75Lj5s0uHYGdUnnabHf9cW+rk9ES363YkbjtOjTMmFkE7RMPKe019UlWkzohoCS4Du6Jryf7PWcyDZX5VpJ4b3Rpg/VkYhV/q2AubKT5sPNSfZjfaiGxG5x3LA+aD89KjnHdCht4uUn+7eCBdIuMvmjeqM3xyUT4ad+Fj3BdMYRZU69781syESgY6j8JtyC2zba+FQWg6Str6awo1H/Cs+7dSCPrGOV8E0NOiN0gZEoklmC9+l3H7+QwLjcY/y4puAWrc5/shTsAL/GCLYwVJFatlIDTgfRmztfl8bOWpMK/UZCaWPfNFg7RIqxAxq/BBw== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:5;SRV:;IPV:NLI;SFV:SPM;H:PAXPR10MB4734.EURPRD10.PROD.OUTLOOK.COM;PTR:;CAT:OSPM;SFS:(4636009)(346002)(136003)(366004)(376002)(396003)(39830400003)(6666004)(107886003)(2906002)(66476007)(316002)(6486002)(2616005)(83380400001)(66946007)(66556008)(186003)(5660300002)(38100700002)(36756003)(8676002)(54906003)(4326008)(6496006)(86362001)(8936002)(508600001)(1076003)(6916009)(52116002)(23200700001);DIR:OUT;SFP:1501; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: UpPq+RjG/c4+pj4q0lqsFbVxiJXfsCB2PNLnVOE7lSKp+ZdTL6ScpVqslV+2pflY/0u85Wqp/FpJag6DLRzTS75iZHjH2YAsFwecWktyPVxrbI/Cy2ITzzJNSeRa9YWM+0HjokXc4TlCC7btdq886nBmahg51T4A8pngBFak0Ydu0H29en6k6RIbmKWMN0k5VEMe3+yKdPbZkQOi/B+fXHmXutWy7o+al4HaICJ//lhoKkEOiYh7792IuuWdl/oKTmoa3HYMwPFRmyU52MGoweIFPNHtuH4U1eT0dQXFKFLj9y/3UOS1c1Wn8jcuAvJOqZM9ODMozFyWkCLvyZxIHfkod8ZY/ALVkap6XT9L6MFB2+SZzx+TxXVak/OB78lk/lEDLBS+u8Y3VXfYzkvTUOAkqg80gbRlJKdiKXihR4DkZ+ySLiOTpLXdnMLAYGzbbHOwae7NSLXeBKeQG+RNx6w2FF5+QEle6l51XYvjw5cBEjLycLB1Ol8DcZcvDPGau8YcJwsVTfcVjDuVfP1wwjcwbcyQdW72NHRNLpSVIpwybPpV+qanqXPuW/I51taG7PxIP2VPGp5x4RVv11uwx8mKrgqjbpDgU58TVnK0kbhpZ5iKdK+1CbtRkBlcbPZOB0LzCueVrG0eWmpdrqyiSCAtSo4EPw3VUQVDgH+4h3ZwaBXdEiwac+zKQWpU6a4dhD7aWTjRP4gJ4+AP1s7q+0xav6k8Qb+KrDwGlqZkmL1y71IGLHiPZYzNdBOQfzdnKeSpdzbKPV2RE1bjbWUPWTKcVxOQCqxPPk5kUXITo4jialeZfDvcr/cvyTZwU03tJDLk5vLWJoi+8FoK5Tzel3l11ifg3yPAxjaXY+6pgvQY/otc5vrCi1TG2Z1bGuOgXmh2ciP4O+Oh7SgG+i519y7X3bJH30Prf4tPTeg1HY/q2yCQJwn3oL3oawsxsjLgJFlrzURsUddhGHCergjHsHxBR34KQYzdcDk91x0W0iq8uyUgzsjAEGvt18rCWow/5zoZWPNLNPe+r4fYJvzlQmusGS47UNo13wrIlNdqgYXXSUx+XBZ7V5SloNDFaJ9qkrgfVlVmcQSNiTwYQYrej0djk8t/Kt8k5F9gk+eP43i6AVDInjTi+LUs6K61UsyFJJt7bpQCYqoS2RzE7zphnGp8dNYrQpRDrn6AucckXYAJJVRzvsPUJQn3Mst7lvObfkRufgNGHP4XOrU/wcFldjpVO/KY63R6ZzCscuzQkWdxbFHcrYhQeahW4AaCeIRAC9CbVnyg2ETIKDyde3vyyWMCVZaUt7f5DygNbF6HHUP8iQMVtJVLKuaORXgepaoGArSETsK4+hbIr0QiutKl0is3B47oQ0UwKhBu6b702DEpMQout3PT/2HIx9PvUz/8WeQ7nLgfRkYFnchyucA77uYLHe3nkQMXdv7I5Pg7zPpT5fxDRSF33RL6KkViYuUNq/E0gmineluXMdbRsBIwHX0fbsxVoS9UiS527O0u8F6Lh6AHXeVpMFxkxrO949RJ3n1T+Qiwh6odn/Hwxdf8kRamOQrjcCn7mumX5db1sKEk3xEs/iUPj3UJDhhNPmxyXfbOAGG5WX1E2qmuPUEo6CgJ0rSqBGsOiswmPUpqQpcJmOn0xw+7iMraxRt8b5ZX8eTjzdc76hoF8+FGV2SoQ1ZhtY9IpHnWXPmzgTe1CSNLy7gw2PP6d0BO/WIVz3ctf9BqPO7GhuLgbxPc/N9bZA== X-OriginatorOrg: gigacodes.de X-MS-Exchange-CrossTenant-Network-Message-Id: f37e792c-711e-42a4-263b-08d9ac370485 X-MS-Exchange-CrossTenant-AuthSource: PAXPR10MB4734.EURPRD10.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 Nov 2021 15:04:14.9545 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 80e41b3b-ea1f-4dbc-91eb-225a572951fb X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: itZTIkU6jpdtmRX9ziLO0sFLPMWXYyBm3gROccae8juNJKcnyl9IwI5tvGVkoQGEC45Lu9ketU/KX5dCuLbJKLQ+0HQXAWPq0Pbm7dXdSDw= X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR10MB4799 Precedence: bulk List-ID: X-Mailing-List: git@vger.kernel.org BAIL_OUT() is meant to abort the whole test run and print a message with a standard prefix that can be parsed to stdout. Since for every test the normal fd`s are redirected in test_eval_ this output would not be seen when used within the context of a test or prereq like we do in test_have_prereq(). To make this function work in these contexts we move the setup of the fd aliases a few lines up before the first use of BAIL_OUT() and then have this function always print to the alias. Signed-off-by: Fabian Stelzer --- t/test-lib.sh | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/t/test-lib.sh b/t/test-lib.sh index f61da562f6..96a09a26a1 100644 --- a/t/test-lib.sh +++ b/t/test-lib.sh @@ -589,6 +589,11 @@ USER_TERM="$TERM" TERM=dumb export TERM USER_TERM +# Set up additional fds so we can control single test i/o +exec 5>&1 +exec 6<&0 +exec 7>&2 + _error_exit () { finalize_junit_xml GIT_EXIT_OK=t @@ -612,7 +617,7 @@ BAIL_OUT () { local bail_out="Bail out! " local message="$1" - say_color error $bail_out "$message" + say_color error $bail_out "$message" >&5 _error_exit } @@ -637,9 +642,6 @@ then exit 0 fi -exec 5>&1 -exec 6<&0 -exec 7>&2 if test "$verbose_log" = "t" then exec 3>>"$GIT_TEST_TEE_OUTPUT_FILE" 4>&3