From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-10.6 required=3.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,HEADER_FROM_DIFFERENT_DOMAINS,HTML_MESSAGE,INCLUDES_CR_TRAILER, INCLUDES_PATCH,MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 72E3AC433EF for ; Wed, 22 Sep 2021 19:41:18 +0000 (UTC) Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id CBE7661038 for ; Wed, 22 Sep 2021 19:41:17 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.4.1 mail.kernel.org CBE7661038 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=redhat.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=nongnu.org Received: from localhost ([::1]:60610 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1mT87I-0005zL-Lp for qemu-devel@archiver.kernel.org; Wed, 22 Sep 2021 15:41:16 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:59278) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1mT7sF-0004Cv-DM for qemu-devel@nongnu.org; Wed, 22 Sep 2021 15:25:43 -0400 Received: from us-smtp-delivery-124.mimecast.com ([170.10.133.124]:41942) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1mT7sB-0002oj-T7 for qemu-devel@nongnu.org; Wed, 22 Sep 2021 15:25:42 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1632338738; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=J23hF3zjxildCJyz40xG64Ga9Y8Y0MaP8LgTlqxc5h0=; b=MKKF9TtHtKl4pvsxAJTPRA0/bJmYdUS5ya4lsgTr5M+YDjUUPh0Mi9a3jmHhXhFhjhNuJ+ Fglww6qgIT93/VAGc9+f8EApA5ANHIy/AKMQQRBUWQEKQmy/tIWqW8o0ePxRyh+jx8Otvi v/90Q34h4TU3PIhxGpoKQTPkHaAFaB0= Received: from mail-oi1-f197.google.com (mail-oi1-f197.google.com [209.85.167.197]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-526-prIQ4AnrMgmDdzCFrwFy0g-1; Wed, 22 Sep 2021 15:25:37 -0400 X-MC-Unique: prIQ4AnrMgmDdzCFrwFy0g-1 Received: by mail-oi1-f197.google.com with SMTP id 20-20020aca2814000000b002690d9b60aaso2422993oix.0 for ; Wed, 22 Sep 2021 12:25:36 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=J23hF3zjxildCJyz40xG64Ga9Y8Y0MaP8LgTlqxc5h0=; b=gYLwQxpGiZUMEC00QyyuoMEBR69mZ9Mr7QnBpLJtkCEPays+4p4tUwgspmGu5ubaj8 +/pr/kT40EOTZcT8BSfOrr3TVzdgD2E6UgWmdkDUt6Eo4ak8GS/DGtCWmINeKPgQ+gB8 9siJN0Y90yoaxldo0fqshSSb/eBFkKv+QKbzI1q6kstoHiWUdcb0nYauvFxIZ/J37Ps1 7Iq+TRiXkOcaBtjmI0Ubj7+KIsMKkbnVW5dtGWvcKOwrPxxqyb03xxwe+nsYjS5sRMGK uCGDTpCJjaE0/zlDVscOoEgph8CFmujrgKRVlqdWu/ESsGTqjl3pCVPQqIyuUxCYayCD YvlQ== X-Gm-Message-State: AOAM531cMsdAg0YR/HIB3hwi0UCtQBbulB/hCxCCS21xwrvcXSt9fhzw T5npDfRdHkTYCCWddGVh1xK3gmPot+7eeyNFFc0AYvvOJg6zz1R6jx9i4jhJUbzus/GDFxNFeh8 HFSXXcCYuSUqjYf+gzDxaSYQv3jsDqPA= X-Received: by 2002:a9d:7281:: with SMTP id t1mr723549otj.129.1632338736419; Wed, 22 Sep 2021 12:25:36 -0700 (PDT) X-Google-Smtp-Source: ABdhPJwELSM3EZbxXMvmFTNsyWsIj2BQTdUgXmdb+0O/RoQDeONyHKN69b9RQwMnCMpxnxS/bXFugj/Q7fVv+ePNwdU= X-Received: by 2002:a9d:7281:: with SMTP id t1mr723533otj.129.1632338736234; Wed, 22 Sep 2021 12:25:36 -0700 (PDT) MIME-Version: 1.0 References: <20210916040955.628560-1-jsnow@redhat.com> <20210916040955.628560-7-jsnow@redhat.com> In-Reply-To: From: John Snow Date: Wed, 22 Sep 2021 15:25:25 -0400 Message-ID: Subject: Re: [PATCH v3 06/16] iotests/297: Add get_files() function To: Hanna Reitz Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=jsnow@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Type: multipart/alternative; boundary="00000000000086d51505cc9a7aa8" Received-SPF: pass client-ip=170.10.133.124; envelope-from=jsnow@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -42 X-Spam_score: -4.3 X-Spam_bar: ---- X-Spam_report: (-4.3 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-1.472, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H2=-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.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Kevin Wolf , Vladimir Sementsov-Ogievskiy , Eduardo Habkost , qemu-block@nongnu.org, qemu-devel , Markus Armbruster , Cleber Rosa Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: "Qemu-devel" --00000000000086d51505cc9a7aa8 Content-Type: text/plain; charset="UTF-8" On Fri, Sep 17, 2021 at 5:24 AM Hanna Reitz wrote: > On 16.09.21 06:09, John Snow wrote: > > Split out file discovery into its own method to begin separating out the > > "environment setup" and "test execution" phases. > > > > Signed-off-by: John Snow > > --- > > tests/qemu-iotests/297 | 12 +++++++++--- > > 1 file changed, 9 insertions(+), 3 deletions(-) > > > > diff --git a/tests/qemu-iotests/297 b/tests/qemu-iotests/297 > > index 3e86f788fc..b3a56a3a29 100755 > > --- a/tests/qemu-iotests/297 > > +++ b/tests/qemu-iotests/297 > > @@ -21,6 +21,7 @@ import re > > import shutil > > import subprocess > > import sys > > +from typing import List > > > > import iotests > > > > @@ -56,10 +57,15 @@ def is_python_file(filename: str, directory: str = > '.') -> bool: > > return False > > > > > > +def get_test_files(directory: str = '.') -> List[str]: > > + named_test_dir = os.path.join(directory, 'tests') > > + named_tests = [f"tests/{entry}" for entry in > os.listdir(named_test_dir)] > > + check_tests = set(os.listdir(directory) + named_tests) - > set(SKIP_FILES) > > + return list(filter(lambda f: is_python_file(f, directory), > check_tests)) > > Seeing a filter() makes me immensely happy, but I thought that was > unpythonic? > > Eh, depends on what you're doing, I guess? The alternative spelling is: list(f for f in check_tests if is_python_file(f, directory)) ... which I guess *is* shorter and skips the lambda. but, I suppose I have some mild revulsion to seeing "f for f in ..." constructs. If I ever tell you not to use a filter, feel free to cite this patch and then just tell me to shut up. I apologize for any inconsistencies in my style, real or imagined. --js Reviewed-by: Hanna Reitz > > --00000000000086d51505cc9a7aa8 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable


=
On Fri, Sep 17, 2021 at 5:24 AM Hanna= Reitz <hreitz@redhat.com> w= rote:
On 16.09.2= 1 06:09, John Snow wrote:
> Split out file discovery into its own method to begin separating out t= he
> "environment setup" and "test execution" phases. >
> Signed-off-by: John Snow <jsnow@redhat.com>
> ---
>=C2=A0 =C2=A0tests/qemu-iotests/297 | 12 +++++++++---
>=C2=A0 =C2=A01 file changed, 9 insertions(+), 3 deletions(-)
>
> diff --git a/tests/qemu-iotests/297 b/tests/qemu-iotests/297
> index 3e86f788fc..b3a56a3a29 100755
> --- a/tests/qemu-iotests/297
> +++ b/tests/qemu-iotests/297
> @@ -21,6 +21,7 @@ import re
>=C2=A0 =C2=A0import shutil
>=C2=A0 =C2=A0import subprocess
>=C2=A0 =C2=A0import sys
> +from typing import List
>=C2=A0 =C2=A0
>=C2=A0 =C2=A0import iotests
>=C2=A0 =C2=A0
> @@ -56,10 +57,15 @@ def is_python_file(filename: str, directory: str = =3D '.') -> bool:
>=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0return False
>=C2=A0 =C2=A0
>=C2=A0 =C2=A0
> +def get_test_files(directory: str =3D '.') -> List[str]: > +=C2=A0 =C2=A0 named_test_dir =3D os.path.join(directory, 'tests&#= 39;)
> +=C2=A0 =C2=A0 named_tests =3D [f"tests/{entry}" for entry i= n os.listdir(named_test_dir)]
> +=C2=A0 =C2=A0 check_tests =3D set(os.listdir(directory) + named_tests= ) - set(SKIP_FILES)
> +=C2=A0 =C2=A0 return list(filter(lambda f: is_python_file(f, director= y), check_tests))

Seeing a filter() makes me immensely happy, but I thought that was
unpythonic?


Eh, depends on what you're do= ing, I guess?

The alternative spelling is:
list(f for f in check_tests if is_python_file(f, directory))
<= br>
... which I guess *is* shorter and skips the lambda. but, I s= uppose I have some mild revulsion to seeing "f for f in ..." cons= tructs.
If I ever tell you not to use a filter, feel free to cite= this patch and then just tell me to shut up. I apologize for any inconsist= encies in my style, real or imagined.

--js

Reviewed-by: Hanna Reitz <hreitz@redhat.com>



--00000000000086d51505cc9a7aa8--