Hi llya,
Pls find my comments inline. > -----Original Message----- > From: Ilya Maximets <[email protected]> > Sent: Monday, July 19, 2021 4:51 PM > To: Amber, Kumar <[email protected]>; Ilya Maximets > <[email protected]>; [email protected] > Cc: Stokes, Ian <[email protected]> > Subject: Re: [PATCH v1] tests: fix python2 module not find error > > On 7/19/21 1:03 PM, Amber, Kumar wrote: > > Hi llya, > > > > Pls find the comments inline. > > > >> -----Original Message----- > >> From: Ilya Maximets <[email protected]> > >> Sent: Monday, July 19, 2021 4:07 PM > >> To: Ilya Maximets <[email protected]>; Amber, Kumar > >> <[email protected]>; [email protected] > >> Cc: Stokes, Ian <[email protected]> > >> Subject: Re: [PATCH v1] tests: fix python2 module not find error > >> > >> On 7/19/21 12:35 PM, Ilya Maximets wrote: > >>> On 7/17/21 5:21 AM, Amber, Kumar wrote: > >>>> Hi llya, > >>>> > >>>> This is what I get after a minor tweek : > >>>> "except ImportError as err: > >>>> print(err)" > >>>> > >>>> when Scapy is not present : > >>>> > >>>> No module named 'scapy' > >>>> Traceback (most recent call last): > >>>> File "./../mfex_fuzzy.py", line 10, in <module> > >>>> pktdump = PcapWriter(path, append=False, sync=True) > >>>> NameError: name 'PcapWriter' is not defined > >>>> > >>>> Is this ohk ? > >>> > >>> I don't understand why we're catching this exception. > >>> Even with your changes if the package is not available, we will > >>> catch the ImportError, print it and go further, later while trying > >>> to use modules that wasn't imported we will get another more vague > exception. > >>> So what is the port catching ImportError in the first place? > >> > >> s/port/point/ > >> > >>> > >>> If we'll exit after printing... well, but doesn't python print > >>> exception trace by itself? > >>> > >>> BTW, the title of this patch is incorrect. We do not support > >>> python2, this problem is with python3 < 3.6. > > > > Yes makes sense now logs are very clear we don’t need the try and > > catch block at all removed in the patch And fixed the heading . > > > > Traceback (most recent call last): > > File "./mfex_fuzzy.py", line 2, in <module> > > from scapy.all import RandMAC, RandIP, PcapWriter, RandIP6, > > RandShort, fuzz > > ModuleNotFoundError: No module named 'scapy > > OK. And since we're here, the pip3 might not be available on a system, so > checking for 'pip3 list' is not reliable. > Please, replace it with the import attempt. See how idl tests are checking > for SSL > support for example: > https://github.com/openvswitch/ovs/blob/master/tests/ovsdb-idl.at#L228- > L230 > -AT_SKIP_IF([! pip3 list | grep scapy], [], []) +AT_SKIP_IF([! $PYTHON3 -c "import scapy"], [], []) And with Scapy : 6: OVS-DPDK - MFEX Autovalidator ok 7: OVS-DPDK - MFEX Autovalidator Fuzzy ok 8: OVS-DPDK - MFEX Configuration ok Without scapy : 6: OVS-DPDK - MFEX Autovalidator ok 7: OVS-DPDK - MFEX Autovalidator Fuzzy skipped (system-dpdk.at:266) 8: OVS-DPDK - MFEX Configuration ok Regards Amber > > >>> > >>> Best regards, Ilya Maximets. > >>> > >>>> > >>>> Regards > >>>> Amber > >>>> > >>>> > >>>>> -----Original Message----- > >>>>> From: Ilya Maximets <[email protected]> > >>>>> Sent: Saturday, July 17, 2021 12:21 AM > >>>>> To: Amber, Kumar <[email protected]>; ovs- > [email protected] > >>>>> Cc: [email protected]; Stokes, Ian <[email protected]> > >>>>> Subject: Re: [PATCH v1] tests: fix python2 module not find error > >>>>> > >>>>> On 7/16/21 8:15 PM, kumar Amber wrote: > >>>>>> This fixes the flake8 error on pyhton version older than 3.6 as > >>>>>> ModuleNotFoundError in not available before 3.6 and that is now > >>>>>> replaced to ImportError which is present in earlier versions. > >>>>>> > >>>>>> ../../tests/mfex_fuzzy.py:5:8: F821 undefined name > >> 'ModuleNotFoundError' > >>>>>> 2653Makefile:5826: recipe for target 'flake8-check' failed > >>>>>> > >>>>>> Fixes: 50be6715c0 ("test/sytem-dpdk: Add unit test for mfex > >>>>>> autovalidator") > >>>>>> Signed-off-by: kumar Amber <[email protected]> > >>>>>> --- > >>>>>> tests/mfex_fuzzy.py | 2 +- > >>>>>> 1 file changed, 1 insertion(+), 1 deletion(-) > >>>>>> > >>>>>> diff --git a/tests/mfex_fuzzy.py b/tests/mfex_fuzzy.py index > >>>>>> 5b056bb48..fd257ffb6 100755 > >>>>>> --- a/tests/mfex_fuzzy.py > >>>>>> +++ b/tests/mfex_fuzzy.py > >>>>>> @@ -2,7 +2,7 @@ > >>>>>> try: > >>>>>> from scapy.all import RandMAC, RandIP, PcapWriter, RandIP6, > >>>>>> RandShort, > >>>>> fuzz > >>>>>> from scapy.all import IPv6, Dot1Q, IP, Ether, UDP, TCP > >>>>>> -except ModuleNotFoundError as err: > >>>>>> +except ImportError as err: > >>>>>> print(err + ": Scapy") > >>>>>> import sys > >>>>>> > >>>>>> > >>>>> > >>>>> I can confirm that this fixes the flake8 issue. > >>>>> > >>>>> But I'm not sure how that is supposed to work at all. > >>>>> Here is what I get in a plain python console: > >>>>> > >>>>> Python 3.6.8 (default, Mar 18 2021, 08:58:41) [GCC 8.4.1 20200928 > >>>>> (Red Hat 8.4.1-1)] on linux Type "help", "copyright", "credits" or > >>>>> "license" for more information. > >>>>>>>> try: > >>>>> ... from scapy.all import RandMAC > >>>>> ... except ImportError as err: > >>>>> ... print(err + ": Scapy") > >>>>> ... > >>>>> Traceback (most recent call last): > >>>>> File "<stdin>", line 2, in <module> > >>>>> ModuleNotFoundError: No module named 'scapy' > >>>>> > >>>>> During handling of the above exception, another exception occurred: > >>>>> > >>>>> Traceback (most recent call last): > >>>>> File "<stdin>", line 4, in <module> > >>>>> TypeError: unsupported operand type(s) for +: > >>>>> 'ModuleNotFoundError' and > >> 'str' > >>>>> > >>>>> > >>>>> Best regards, Ilya Maximets. > >>> > > _______________________________________________ dev mailing list [email protected] https://mail.openvswitch.org/mailman/listinfo/ovs-dev
