From nobody Sat Nov 23 21:06:00 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1730810391; cv=none; d=zohomail.com; s=zohoarc; b=N4v2gQCZGt6WGkznnJIZUfQ3byYRrgVOwHqEP+vQ7NZ52m3tuxWVf/B1WiZOcaVJ/1Afa123ZXsCpkn5AZ0kOWrOI7uyUg4E+ahRbDUcAvvreAwQIp2JO7Pc6p1Xk6oYwkE5iYzviQPYniEM2szAGRt5Eb7FMc6vrgRzIWixVyU= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1730810391; h=Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=Y5QpxVfjZFFcg1JcaAIroD3zXBJX3sD1VXFE5X6LvY0=; b=Zmnc6exjf00AenlQmqOB67WbJI/r8qZ0TigEeX80kUUPgpxFlWhVZUjQvJB3BJhp5LAmK3tSSJXlg2QdJ29AvUQ5Cqs3oNa6yXMnIb/acZD8g7yKlsZcFtkx4X+doVModLUhR6E0ZW6pkdUOqkXxUI7jqKPfjjFYJ7GDp6y7vuQ= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1730810391851625.5952993545473; Tue, 5 Nov 2024 04:39:51 -0800 (PST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1t8Ipt-0002Ch-TM; Tue, 05 Nov 2024 07:39:05 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1t8Ips-0002CQ-Cw for qemu-devel@nongnu.org; Tue, 05 Nov 2024 07:39:04 -0500 Received: from us-smtp-delivery-124.mimecast.com ([170.10.129.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1t8Ipp-0007fU-0p for qemu-devel@nongnu.org; Tue, 05 Nov 2024 07:39:04 -0500 Received: from mx-prod-mc-03.mail-002.prod.us-west-2.aws.redhat.com (ec2-54-186-198-63.us-west-2.compute.amazonaws.com [54.186.198.63]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-287-wg2T0SYtMWu5IZigNB9Qjw-1; Tue, 05 Nov 2024 07:38:55 -0500 Received: from mx-prod-int-05.mail-002.prod.us-west-2.aws.redhat.com (mx-prod-int-05.mail-002.prod.us-west-2.aws.redhat.com [10.30.177.17]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by mx-prod-mc-03.mail-002.prod.us-west-2.aws.redhat.com (Postfix) with ESMTPS id 30642195604F; Tue, 5 Nov 2024 12:38:54 +0000 (UTC) Received: from thuth-p1g4.redhat.com (unknown [10.39.194.117]) by mx-prod-int-05.mail-002.prod.us-west-2.aws.redhat.com (Postfix) with ESMTP id 317481956052; Tue, 5 Nov 2024 12:38:50 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1730810338; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding; bh=Y5QpxVfjZFFcg1JcaAIroD3zXBJX3sD1VXFE5X6LvY0=; b=R5qFAUnRl8opvJPtrR5YCB0FRifufp4CGP999aVO7oreC9TElYlUgKaXZ1gkVfWd7GxMls U0C3NXM7PZUB2CXxosihHU6gkIU/rS92sZJ0Ju8dIfYDzybSFgTIr5ZidCaCrz0+L5c/4o oygejf/DpV9Ni18Y6bjLEolTBd4DVyQ= X-MC-Unique: wg2T0SYtMWu5IZigNB9Qjw-1 From: Thomas Huth To: qemu-devel@nongnu.org Cc: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , Peter Maydell , "Daniel P . Berrange" , =?UTF-8?q?C=C3=A9dric=20Le=20Goater?= Subject: [PATCH] tests/functional: Provide the user with hints where to find more log files Date: Tue, 5 Nov 2024 13:38:49 +0100 Message-ID: <20241105123849.359391-1-thuth@redhat.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-Scanned-By: MIMEDefang 3.0 on 10.30.177.17 Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=170.10.129.124; envelope-from=thuth@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -23 X-Spam_score: -2.4 X-Spam_bar: -- X-Spam_report: (-2.4 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.34, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H2=-0.001, RCVD_IN_VALIDITY_CERTIFIED_BLOCKED=0.001, RCVD_IN_VALIDITY_RPBL_BLOCKED=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @redhat.com) X-ZM-MESSAGEID: 1730810395151116600 Content-Type: text/plain; charset="utf-8" Since the base.log and console.log files are not referenced from the meson test logs yet, they might be hard to find for the casual users. Thus let's print some hints in case a test case failed. For this we have to run unittest.main() with exit=3DFalse to get the results of the testing. Then we can iterate through the failed test cases to print out the information accordingly. Signed-off-by: Thomas Huth Reviewed-by: C=C3=A9dric Le Goater Tested-by: C=C3=A9dric Le Goater --- tests/functional/qemu_test/testcase.py | 18 +++++++++++++----- 1 file changed, 13 insertions(+), 5 deletions(-) diff --git a/tests/functional/qemu_test/testcase.py b/tests/functional/qemu= _test/testcase.py index aa0146265a..411978b5ef 100644 --- a/tests/functional/qemu_test/testcase.py +++ b/tests/functional/qemu_test/testcase.py @@ -45,10 +45,10 @@ def setUp(self, bin_prefix): os.makedirs(self.workdir, exist_ok=3DTrue) =20 self.logdir =3D self.workdir + self.log_filename =3D os.path.join(self.logdir, 'base.log') self.log =3D logging.getLogger('qemu-test') self.log.setLevel(logging.DEBUG) - self._log_fh =3D logging.FileHandler(os.path.join(self.logdir, - 'base.log'), mode= =3D'w') + self._log_fh =3D logging.FileHandler(self.log_filename, mode=3D'w') self._log_fh.setLevel(logging.DEBUG) fileFormatter =3D logging.Formatter( '%(asctime)s - %(levelname)s: %(message)s') @@ -68,7 +68,14 @@ def main(): =20 tr =3D pycotap.TAPTestRunner(message_log =3D pycotap.LogMode.LogTo= Error, test_output_log =3D pycotap.LogMode.Log= ToError) - unittest.main(module =3D None, testRunner =3D tr, argv=3D["__dummy= __", path]) + res =3D unittest.main(module =3D None, testRunner =3D tr, exit =3D= False, + argv=3D["__dummy__", path]) + for (test, message) in res.result.errors + res.result.failures: + print('More information on ' + test.id() + ' could be found he= re:' + '\n %s' % test.log_filename, file=3Dsys.stderr) + if hasattr(test, 'console_log_name'): + print(' %s' % test.console_log_name, file=3Dsys.stderr) + sys.exit(not res.result.wasSuccessful()) =20 =20 class QemuUserTest(QemuBaseTest): @@ -101,8 +108,9 @@ def setUp(self): =20 console_log =3D logging.getLogger('console') console_log.setLevel(logging.DEBUG) - self._console_log_fh =3D logging.FileHandler(os.path.join(self.wor= kdir, - 'console.log'), mode=3D= 'w') + self.console_log_name =3D os.path.join(self.workdir, 'console.log') + self._console_log_fh =3D logging.FileHandler(self.console_log_name, + mode=3D'w') self._console_log_fh.setLevel(logging.DEBUG) fileFormatter =3D logging.Formatter('%(asctime)s: %(message)s') self._console_log_fh.setFormatter(fileFormatter) --=20 2.47.0