selftests: net: devlink_port_split.py: skip the test if no devlink device
When there is no devlink device, the following command will return: $ devlink -j dev show {dev:{}} This will cause IndexError when trying to access the first element in dev of this json dataset. Use the kselftest framework skip code to skip this test in this case. Example output with this change: # selftests: net: devlink_port_split.py # no devlink device was found, test skipped ok 7 selftests: net: devlink_port_split.py # SKIP Link: https://bugs.launchpad.net/bugs/1928889 Signed-off-by: Po-Hsu Lin <po-hsu.lin@canonical.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
Родитель
07b5dc1d51
Коммит
25173dd409
|
@ -18,6 +18,8 @@ import sys
|
|||
#
|
||||
|
||||
|
||||
# Kselftest framework requirement - SKIP code is 4
|
||||
KSFT_SKIP=4
|
||||
Port = collections.namedtuple('Port', 'bus_info name')
|
||||
|
||||
|
||||
|
@ -239,7 +241,11 @@ def main(cmdline=None):
|
|||
assert stderr == ""
|
||||
|
||||
devs = json.loads(stdout)['dev']
|
||||
dev = list(devs.keys())[0]
|
||||
if devs:
|
||||
dev = list(devs.keys())[0]
|
||||
else:
|
||||
print("no devlink device was found, test skipped")
|
||||
sys.exit(KSFT_SKIP)
|
||||
|
||||
cmd = "devlink dev show %s" % dev
|
||||
stdout, stderr = run_command(cmd)
|
||||
|
|
Загрузка…
Ссылка в новой задаче