tests: add uuid parser check
The check is based on code by Theodore Ts'o to test libuuid, from which unstable output is commented out. Signed-off-by: Sami Kerola <kerolasa@iki.fi>
This commit is contained in:
parent
c2f03da93d
commit
4d3f964e4a
|
@ -1,8 +1,8 @@
|
||||||
|
|
||||||
check_PROGRAMS += test_uuid
|
check_PROGRAMS += test_uuid_parser
|
||||||
test_uuid_SOURCES = libuuid/src/test_uuid.c
|
test_uuid_parser_SOURCES = libuuid/src/test_uuid.c
|
||||||
test_uuid_LDADD = libuuid.la $(SOCKET_LIBS)
|
test_uuid_parser_LDADD = libuuid.la $(SOCKET_LIBS)
|
||||||
test_uuid_CFLAGS = -I$(ul_libuuid_incdir)
|
test_uuid_parser_CFLAGS = -I$(ul_libuuid_incdir)
|
||||||
|
|
||||||
# includes
|
# includes
|
||||||
uuidincdir = $(includedir)/uuid
|
uuidincdir = $(includedir)/uuid
|
||||||
|
|
|
@ -69,13 +69,15 @@ static int test_uuid(const char * uuid, int isValid)
|
||||||
int
|
int
|
||||||
main(int argc ATTR((unused)) , char **argv ATTR((unused)))
|
main(int argc ATTR((unused)) , char **argv ATTR((unused)))
|
||||||
{
|
{
|
||||||
|
int failed = 0;
|
||||||
|
/* Code commented out will print random uuid's that are unsuitable output
|
||||||
|
* for test suite.
|
||||||
uuid_t buf, tst;
|
uuid_t buf, tst;
|
||||||
char str[100];
|
char str[100];
|
||||||
struct timeval tv;
|
struct timeval tv;
|
||||||
time_t time_reg;
|
time_t time_reg;
|
||||||
unsigned char *cp;
|
unsigned char *cp;
|
||||||
int i;
|
int i;
|
||||||
int failed = 0;
|
|
||||||
int type, variant;
|
int type, variant;
|
||||||
|
|
||||||
uuid_generate(buf);
|
uuid_generate(buf);
|
||||||
|
@ -160,6 +162,7 @@ main(int argc ATTR((unused)) , char **argv ATTR((unused)))
|
||||||
printf("UUID copy and compare failed!\n");
|
printf("UUID copy and compare failed!\n");
|
||||||
failed++;
|
failed++;
|
||||||
}
|
}
|
||||||
|
*/
|
||||||
failed += test_uuid("84949cc5-4701-4a84-895b-354c584a981b", 1);
|
failed += test_uuid("84949cc5-4701-4a84-895b-354c584a981b", 1);
|
||||||
failed += test_uuid("84949CC5-4701-4A84-895B-354C584A981B", 1);
|
failed += test_uuid("84949CC5-4701-4A84-895B-354C584A981B", 1);
|
||||||
failed += test_uuid("84949cc5-4701-4a84-895b-354c584a981bc", 0);
|
failed += test_uuid("84949cc5-4701-4a84-895b-354c584a981bc", 0);
|
||||||
|
@ -171,6 +174,9 @@ main(int argc ATTR((unused)) , char **argv ATTR((unused)))
|
||||||
failed += test_uuid("84949cc5-4701-4a84-895b0354c584a981b", 0);
|
failed += test_uuid("84949cc5-4701-4a84-895b0354c584a981b", 0);
|
||||||
failed += test_uuid("g4949cc5-4701-4a84-895b-354c584a981b", 0);
|
failed += test_uuid("g4949cc5-4701-4a84-895b-354c584a981b", 0);
|
||||||
failed += test_uuid("84949cc5-4701-4a84-895b-354c584a981g", 0);
|
failed += test_uuid("84949cc5-4701-4a84-895b-354c584a981g", 0);
|
||||||
|
failed += test_uuid("00000000-0000-0000-0000-000000000000", 1);
|
||||||
|
failed += test_uuid("01234567-89ab-cdef-0134-567890abcedf", 1);
|
||||||
|
failed += test_uuid("ffffffff-ffff-ffff-ffff-ffffffffffff", 1);
|
||||||
|
|
||||||
if (failed) {
|
if (failed) {
|
||||||
printf("%d failures.\n", failed);
|
printf("%d failures.\n", failed);
|
||||||
|
|
|
@ -30,6 +30,7 @@ TS_HELPER_SCRIPT="$top_builddir/test_script"
|
||||||
TS_HELPER_SIGRECEIVE="$top_builddir/test_sigreceive"
|
TS_HELPER_SIGRECEIVE="$top_builddir/test_sigreceive"
|
||||||
TS_HELPER_STRUTILS="$top_builddir/test_strutils"
|
TS_HELPER_STRUTILS="$top_builddir/test_strutils"
|
||||||
TS_HELPER_SYSINFO="$top_builddir/test_sysinfo"
|
TS_HELPER_SYSINFO="$top_builddir/test_sysinfo"
|
||||||
|
TS_HELPER_UUID_PARSER="$top_builddir/test_uuid_parser"
|
||||||
|
|
||||||
# paths to commands
|
# paths to commands
|
||||||
TS_CMD_ADDPART=${TS_CMD_ADDPART:-"$top_builddir/addpart"}
|
TS_CMD_ADDPART=${TS_CMD_ADDPART:-"$top_builddir/addpart"}
|
||||||
|
|
|
@ -0,0 +1,15 @@
|
||||||
|
84949cc5-4701-4a84-895b-354c584a981b is valid, OK
|
||||||
|
84949CC5-4701-4A84-895B-354C584A981B is valid, OK
|
||||||
|
84949cc5-4701-4a84-895b-354c584a981bc is invalid, OK
|
||||||
|
84949cc5-4701-4a84-895b-354c584a981 is invalid, OK
|
||||||
|
84949cc5x4701-4a84-895b-354c584a981b is invalid, OK
|
||||||
|
84949cc504701-4a84-895b-354c584a981b is invalid, OK
|
||||||
|
84949cc5-470104a84-895b-354c584a981b is invalid, OK
|
||||||
|
84949cc5-4701-4a840895b-354c584a981b is invalid, OK
|
||||||
|
84949cc5-4701-4a84-895b0354c584a981b is invalid, OK
|
||||||
|
g4949cc5-4701-4a84-895b-354c584a981b is invalid, OK
|
||||||
|
84949cc5-4701-4a84-895b-354c584a981g is invalid, OK
|
||||||
|
00000000-0000-0000-0000-000000000000 is valid, OK
|
||||||
|
01234567-89ab-cdef-0134-567890abcedf is valid, OK
|
||||||
|
ffffffff-ffff-ffff-ffff-ffffffffffff is valid, OK
|
||||||
|
return value: 0
|
|
@ -0,0 +1,26 @@
|
||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
# This file is part of util-linux.
|
||||||
|
#
|
||||||
|
# This file is free software; you can redistribute it and/or modify
|
||||||
|
# it under the terms of the GNU General Public License as published by
|
||||||
|
# the Free Software Foundation; either version 2 of the License, or
|
||||||
|
# (at your option) any later version.
|
||||||
|
#
|
||||||
|
# This file is distributed in the hope that it will be useful,
|
||||||
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
# GNU General Public License for more details.
|
||||||
|
|
||||||
|
TS_TOPDIR="${0%/*}/../.."
|
||||||
|
TS_DESC="uuid_parser"
|
||||||
|
|
||||||
|
. $TS_TOPDIR/functions.sh
|
||||||
|
ts_init "$*"
|
||||||
|
|
||||||
|
ts_check_test_command "$TS_HELPER_UUID_PARSER"
|
||||||
|
|
||||||
|
$TS_HELPER_UUID_PARSER > $TS_OUTPUT 2>&1
|
||||||
|
echo "return value: $?" >> $TS_OUTPUT
|
||||||
|
|
||||||
|
ts_finalize
|
Loading…
Reference in New Issue