Received: by 2002:a05:6a10:16a7:0:0:0:0 with SMTP id gp39csp3798233pxb; Mon, 9 Nov 2020 23:31:24 -0800 (PST) X-Google-Smtp-Source: ABdhPJxpxk/8f5U4rzVArcr0vZ+71r2RW6Msrc0W2s9euOkLgF6YGH6tbAGd1IWxuVBk6k9oNWhz X-Received: by 2002:a17:906:d285:: with SMTP id ay5mr18459675ejb.84.1604993484567; Mon, 09 Nov 2020 23:31:24 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1604993484; cv=none; d=google.com; s=arc-20160816; b=QNyY1gdTouKkjqsbJ5t4JOKGIWp1s3CC/g4LX0MrgSOkYRyzlowAy+cQqBCkBigFou hCUMotPZ7+8bYPpc+eylt5eStO9pp8r7luNB4oCPRQ9nCXrggmIkAj9GmIgfF8D7nWLh Vs5HiBhwfubmrdP0GJbbfTX8v8qd7veVXlTYAErIVMgXLLaEJ9sz3nOUByJr5/21jGFS krahdbVfqRKwwXILvgvDZfTZUy74qhutGXhe/T7t9UdtdAdCI790Bp2ZQGvMdmcZ0A6V 128q3yDz2jShqYYiyOMC9g54MRHn85yDBF+WECO+bnBQ7T3EJzBj9JKPwyqGJikm4xPw TROw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:cc:to:from:subject:mime-version:message-id:date :sender:dkim-signature; bh=RZgsjIDnKB7xNbDoCh6k0wt84803ONPo3Yw+qTs38F8=; b=qL/Zd5/3QSX2/QR2VNFmkd3pn5GU0rMh7iKAm1ZXXezgcubpTw0ZaEedpXRgU+tq5z HVbhAT+GbE5xG0INAGCv/mNUcdWMtLwPuCM/NzoTZda0trPJKIFTDJi3A85kgQvC+8M0 oH03LH/+G+KgZxelXYzrc+YDEULk7kSH9cLqENk9ioWWZrIvb3PgdeqARWprNaR4Q+eE HANtBGaIU+S/6E6TOOFAhV+yVYeBXde1n3/8IIOUZ2BrZ4W8xIDz6pyVbw/Mzpt8MEfF 1YDntexQ23k7TLwx6t67ky+0JEe5knqe7U7MESmJ/SOm0WY+DAidSR/xyMp5ndqYn+r+ TIcw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@google.com header.s=20161025 header.b=QgFUkXA2; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=google.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id cc10si10608458edb.156.2020.11.09.23.31.02; Mon, 09 Nov 2020 23:31:24 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@google.com header.s=20161025 header.b=QgFUkXA2; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=google.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1727991AbgKJH3l (ORCPT + 99 others); Tue, 10 Nov 2020 02:29:41 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:51806 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726690AbgKJH3l (ORCPT ); Tue, 10 Nov 2020 02:29:41 -0500 Received: from mail-yb1-xb49.google.com (mail-yb1-xb49.google.com [IPv6:2607:f8b0:4864:20::b49]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id E79EAC0613D3 for ; Mon, 9 Nov 2020 23:29:40 -0800 (PST) Received: by mail-yb1-xb49.google.com with SMTP id h6so14097525ybk.4 for ; Mon, 09 Nov 2020 23:29:40 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20161025; h=sender:date:message-id:mime-version:subject:from:to:cc; bh=RZgsjIDnKB7xNbDoCh6k0wt84803ONPo3Yw+qTs38F8=; b=QgFUkXA2SAS1RT3zLRUZQIxgkv6sINiHkdp0k26B9TEPGFujos3tfIMuq162pDwcHb 25WYHtRA6LVX/3I13vzASjNpOFPYbI/P8NjqJqs1fF/sjHlI0hi7Y0CHLHGQOiuVBHhI 7eBRhQyZJMHUxZO7OP5cTQ82Ls4RWxR43TyD1BiF8ItQNd5skmmnV7As/j/r5OBO4RZv 0tBYbHHHiI3zrd9kycipvmoZff6JqikpfixK7kxkbyoMIVWR6tDqB63EcB8EOJQL3hom dMusd4FjQw3D3BSTA8wMJV4I4FUn17tRgJQn0xD9JfUYSeJUDl+RENDI04VrkyeX0jT3 SJgg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:date:message-id:mime-version:subject:from :to:cc; bh=RZgsjIDnKB7xNbDoCh6k0wt84803ONPo3Yw+qTs38F8=; b=Q1UMK6iIXkjo2I/WGjSboriqLYqyh9iixCn/NW98Va8bDJrhxjbXhJbO9kX2+bP3qN VErV0LyhsPFDo4yuniBxSXkNsjwDIIZbd70//hsY8z4vgxrVocqTLBf7xk5VoFrqq3nW 2M1BYeseQKgQzF8p2JFF//eXiKcpB1uKVPRjJSBtsvoBcPyZoyubEjRlkPZEDohhLj5x 1mYYeZh4jb2Qz8NHZQ6VoIGz9+HanPVtXKWWk4iDFNaUg4vSqo0ILjZCVoIFqpqv5Jh3 3PVSb/adzIHWga22tPc+RjE5UblSo4ocVRyQ3y5uNg3Cl9ASXj1Jpq2trAlnI7djYz+/ E78Q== X-Gm-Message-State: AOAM5300XRDp7O9X3FVln8lI08GHkMyawIHfKrTyZ4QJXn0KoT5OzOka vXh2La2g0xz99oIwuT0K+CxclvYD2/9meg== Sender: "davidgow via sendgmr" X-Received: from spirogrip.svl.corp.google.com ([2620:15c:2cb:201:42a8:f0ff:fe4d:3548]) (user=davidgow job=sendgmr) by 2002:a25:42c6:: with SMTP id p189mr11273929yba.255.1604993380137; Mon, 09 Nov 2020 23:29:40 -0800 (PST) Date: Mon, 9 Nov 2020 23:29:36 -0800 Message-Id: <20201110072936.1380718-1-davidgow@google.com> Mime-Version: 1.0 X-Mailer: git-send-email 2.29.2.222.g5d2a92d10f8-goog Subject: [PATCH] kunit: kunit_tool: Correctly parse diagnostic messages From: David Gow To: brendanhiggins@google.com, Shuah Khan , Arpitha Raghunandan <98.arpi@gmail.com>, Marco Elver Cc: KUnit Development , linux-kselftest@vger.kernel.org, Linux Kernel Mailing List , David Gow Content-Type: text/plain; charset="UTF-8" Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Currently, kunit_tool expects all diagnostic lines in test results to contain ": " somewhere, as both the subtest header and the crash report do. Fix this to accept any line starting with (minus indent) "# " as being a valid diagnostic line. This matches what the TAP spec[1] and the draft KTAP spec[2] are expecting. [1]: http://testanything.org/tap-specification.html [2]: https://lore.kernel.org/linux-kselftest/CY4PR13MB1175B804E31E502221BC8163FD830@CY4PR13MB1175.namprd13.prod.outlook.com/T/ Signed-off-by: David Gow --- tools/testing/kunit/kunit_parser.py | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/tools/testing/kunit/kunit_parser.py b/tools/testing/kunit/kunit_parser.py index 84a1af2581f5..dab4cfa05b74 100644 --- a/tools/testing/kunit/kunit_parser.py +++ b/tools/testing/kunit/kunit_parser.py @@ -134,8 +134,8 @@ def parse_ok_not_ok_test_case(lines: List[str], test_case: TestCase) -> bool: else: return False -SUBTEST_DIAGNOSTIC = re.compile(r'^[\s]+# .*?: (.*)$') -DIAGNOSTIC_CRASH_MESSAGE = 'kunit test case crashed!' +SUBTEST_DIAGNOSTIC = re.compile(r'^[\s]+# (.*)$') +DIAGNOSTIC_CRASH_MESSAGE = re.compile(r'^[\s]+# .*?: kunit test case crashed!$') def parse_diagnostic(lines: List[str], test_case: TestCase) -> bool: save_non_diagnositic(lines, test_case) @@ -145,7 +145,8 @@ def parse_diagnostic(lines: List[str], test_case: TestCase) -> bool: match = SUBTEST_DIAGNOSTIC.match(line) if match: test_case.log.append(lines.pop(0)) - if match.group(1) == DIAGNOSTIC_CRASH_MESSAGE: + crash_match = DIAGNOSTIC_CRASH_MESSAGE.match(line) + if crash_match: test_case.status = TestStatus.TEST_CRASHED return True else: -- 2.29.2.222.g5d2a92d10f8-goog