]> code.ossystems Code Review - openembedded-core.git/commit
oeqa/runtime/df: don't fail on long device names
authorAndré Draszik <git@andred.net>
Wed, 16 Oct 2019 09:18:22 +0000 (10:18 +0100)
committerRichard Purdie <richard.purdie@linuxfoundation.org>
Sat, 19 Oct 2019 17:13:38 +0000 (18:13 +0100)
commit8c23c1476d0c64b9bc8806db03414fa914c1e658
treebd59e92e7d05f3e73c0ee2bfa4ddcf848105f47c
parentd99617b8f2a9354b7357524fcd2eee16af0677b7
oeqa/runtime/df: don't fail on long device names

When device names are long (more than 20 characters), the
df test will fail with an exception:
    self.assertTrue(int(output)>5120, msg=msg)
    ValueError: invalid literal for int() with base 10: ''
at least when busybox is in use.

The reason is that busybox breaks the line in that case:
    Filesystem           1K-blocks      Used Available Use% Mounted on
    /dev/disk/by-partuuid/8e991e5a-cebd-4f88-9494-c9db4f30cb02
                           1998672     87024   1790408   5% /
and the code tries to extract the fourth field from the
second line, which is empty of course.

df can be told not to break lines, though, using the -P
flag, which turns on the POSIX output format, and is
supported by busybox df and coreutils df:
    Filesystem           1024-blocks    Used Available Capacity Mounted on
    /dev/disk/by-partuuid/8e991e5a-cebd-4f88-9494-c9db4f30cb02   1998672     87024   1790408   5% /

Signed-off-by: André Draszik <git@andred.net>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
meta/lib/oeqa/runtime/cases/df.py