From: Patrick Steinhardt Date: Fri, 23 Aug 2019 13:32:58 +0000 (+0200) Subject: tests: (fdisk) avoid hardcoding of errno string X-Git-Tag: v2.35-rc1~260 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=2ede7ec214ad49e58b999c833e00e68cc052eb7e;p=thirdparty%2Futil-linux.git tests: (fdisk) avoid hardcoding of errno string The test fdisk/oddinput hardcodes strings returned by strerror(3P) for both the errors ENOENT and ENOTTY. As these strings are unportable, convert the tests to use the test_strerror helper instead to convert them with sed(1). Signed-off-by: Patrick Steinhardt --- diff --git a/tests/expected/fdisk/oddinput b/tests/expected/fdisk/oddinput index 2fccc6cd58..219e98b67c 100644 --- a/tests/expected/fdisk/oddinput +++ b/tests/expected/fdisk/oddinput @@ -6,6 +6,6 @@ Units: cylinders of 16065 * 512 = 8225280 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Nonexistent file -fdisk: cannot open _a_file_that_does_not_exist_: No such file or directory +fdisk: cannot open _a_file_that_does_not_exist_: ENOENT Too small file -fdisk: cannot open oddinput.toosmall: Inappropriate ioctl for device +fdisk: cannot open oddinput.toosmall: ENOTTY diff --git a/tests/helpers/test_strerror.c b/tests/helpers/test_strerror.c index 1919698ebf..a063b11651 100644 --- a/tests/helpers/test_strerror.c +++ b/tests/helpers/test_strerror.c @@ -18,6 +18,8 @@ static struct { const char *str; int error; } errors[] = { + E(ENOENT), + E(ENOTTY), E(EILSEQ) }; diff --git a/tests/ts/fdisk/oddinput b/tests/ts/fdisk/oddinput index 0679242649..7b0c8bfd4b 100755 --- a/tests/ts/fdisk/oddinput +++ b/tests/ts/fdisk/oddinput @@ -38,10 +38,12 @@ ts_log "Empty image listing" # this should report empty partition table $TS_CMD_FDISK -c=dos -u=cylinders -l ${TEST_IMAGE_NAME} 2>&1 | sed -e "s/${TEST_IMAGE_NAME//\//\\/}/testimage/" >> $TS_OUTPUT ts_log "Nonexistent file" # this originally does absolutely nothing -$TS_CMD_FDISK -c=dos -u=cylinders -l _a_file_that_does_not_exist_ >> $TS_OUTPUT 2>&1 +$TS_CMD_FDISK -c=dos -u=cylinders -l _a_file_that_does_not_exist_ 2>&1 | + sed -e "s@$($TS_HELPER_STRERROR ENOENT)@ENOENT@" >> $TS_OUTPUT ts_log "Too small file" # same here echo "This file is too small" >> oddinput.toosmall -$TS_CMD_FDISK -c=dos -u=cylinders -l oddinput.toosmall >> $TS_OUTPUT 2>&1 +$TS_CMD_FDISK -c=dos -u=cylinders -l oddinput.toosmall 2>&1 | + sed -e "s@$($TS_HELPER_STRERROR ENOTTY)@ENOTTY@" >> $TS_OUTPUT rm oddinput.toosmall ts_finalize