mirror of
https://github.com/libguestfs/libguestfs.git
synced 2026-03-22 07:03:38 +00:00
tests: Replace TestOutputFileMD5 with TestResult and C test.
This commit is contained in:
@@ -7823,9 +7823,9 @@ types (see C<guestfs_part_get_parttype>)." };
|
||||
style = RString "checksum", [String "csumtype"; Device "device"], [];
|
||||
proc_nr = Some 237;
|
||||
tests = [
|
||||
InitISOFS, Always, TestOutputFileMD5 (
|
||||
InitISOFS, Always, TestResult (
|
||||
[["checksum_device"; "md5"; "/dev/sdd"]],
|
||||
"../data/test.iso")
|
||||
"check_file_md5 (ret, \"../data/test.iso\") == 0")
|
||||
];
|
||||
shortdesc = "compute MD5, SHAx or CRC checksum of the contents of a device";
|
||||
longdesc = "\
|
||||
|
||||
@@ -173,6 +173,22 @@ md5sum (const char *filename, char *result)
|
||||
result[32] = '\\0';
|
||||
}
|
||||
|
||||
/* Compare MD5 has to expected hash of a file. */
|
||||
static int
|
||||
check_file_md5 (const char *ret, const char *filename)
|
||||
{
|
||||
char expected[33];
|
||||
|
||||
md5sum (filename, expected);
|
||||
if (STRNEQ (ret, expected)) {
|
||||
fprintf (stderr, \"test failed: MD5 returned (%%s) does not match MD5 of file %%s (%%s)\\n\",
|
||||
ret, filename, expected);
|
||||
return -1;
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
/* Return the value for a key in a hashtable.
|
||||
* Note: the return value is part of the hash and should not be freed.
|
||||
*/
|
||||
@@ -649,19 +665,6 @@ and generate_one_test_body name i test_name init test =
|
||||
in
|
||||
List.iter (generate_test_command_call test_name) seq;
|
||||
generate_test_command_call ~test test_name last
|
||||
| TestOutputFileMD5 (seq, filename) ->
|
||||
pr " /* TestOutputFileMD5 for %s (%d) */\n" name i;
|
||||
pr " char expected[33];\n";
|
||||
pr " md5sum (\"%s\", expected);\n" filename;
|
||||
let seq, last = get_seq_last seq in
|
||||
let test ret =
|
||||
pr " if (STRNEQ (%s, expected)) {\n" ret;
|
||||
pr " fprintf (stderr, \"%%s: expected \\\"%%s\\\" but got \\\"%%s\\\"\\n\", \"%s\", expected, %s);\n" test_name ret;
|
||||
pr " return -1;\n";
|
||||
pr " }\n"
|
||||
in
|
||||
List.iter (generate_test_command_call test_name) seq;
|
||||
generate_test_command_call ~test test_name last
|
||||
| TestOutputHashtable (seq, fields) ->
|
||||
pr " /* TestOutputHashtable for %s (%d) */\n" name i;
|
||||
pr " const char *key, *expected, *value;\n";
|
||||
|
||||
@@ -238,7 +238,6 @@ and test =
|
||||
* be replaced with 'TestResult'.
|
||||
*)
|
||||
| TestOutputBuffer of seq * string
|
||||
| TestOutputFileMD5 of seq * string
|
||||
| TestOutputHashtable of seq * (string * string) list
|
||||
|
||||
(* Test prerequisites. *)
|
||||
|
||||
@@ -267,7 +267,6 @@ let seq_of_test = function
|
||||
| TestResultFalse s
|
||||
| TestLastFail s
|
||||
| TestOutputBuffer (s, _)
|
||||
| TestOutputFileMD5 (s, _)
|
||||
| TestOutputHashtable (s, _) -> s
|
||||
|
||||
let c_quote str =
|
||||
|
||||
Reference in New Issue
Block a user