From: Stefan Metzmacher Date: Fri, 31 Jul 2020 11:23:19 +0000 (+0200) Subject: torture/ndr: add more details to the test names X-Git-Tag: talloc-2.3.3~90 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=cb60901604cd2f2e45acb609281b5a52b0b39aea;p=thirdparty%2Fsamba.git torture/ndr: add more details to the test names We can have more than one blob for a given idl function and we should avoid using the same name for all of them. BUG: https://bugzilla.samba.org/show_bug.cgi?id=14452 Signed-off-by: Stefan Metzmacher Reviewed-by: Samuel Cabrero --- diff --git a/source4/torture/ndr/ndr.c b/source4/torture/ndr/ndr.c index f73c6feda6c..2e4d94f579e 100644 --- a/source4/torture/ndr/ndr.c +++ b/source4/torture/ndr/ndr.c @@ -152,10 +152,12 @@ _PUBLIC_ struct torture_test *_torture_suite_add_ndr_pullpush_test( ndr_push_flags_fn_t push_fn, ndr_print_fn_t print_fn, ndr_print_function_t print_function, + const char *db_name, DATA_BLOB db, size_t struct_size, int ndr_flags, int flags, + const char *check_fn_name, bool (*check_fn) (struct torture_context *ctx, void *data)) { struct torture_test *test; @@ -166,8 +168,9 @@ _PUBLIC_ struct torture_test *_torture_suite_add_ndr_pullpush_test( test = talloc(tcase, struct torture_test); - test->name = talloc_strdup(test, name); - test->description = NULL; + test->name = talloc_strdup(test, check_fn_name); + test->description = talloc_asprintf(test, "db:%s", + db_name); test->run = wrap_ndr_pullpush_test; data = talloc_zero(test, struct ndr_pull_test_data); @@ -268,10 +271,13 @@ _PUBLIC_ struct torture_test *_torture_suite_add_ndr_pull_inout_test( const char *name, ndr_pull_flags_fn_t pull_fn, ndr_print_function_t print_function, + const char *db_in_name, DATA_BLOB db_in, + const char *db_out_name, DATA_BLOB db_out, size_t struct_size, int flags, + const char *check_fn_name, bool (*check_fn) (struct torture_context *ctx, void *data)) { struct torture_test *test; @@ -282,8 +288,10 @@ _PUBLIC_ struct torture_test *_torture_suite_add_ndr_pull_inout_test( test = talloc(tcase, struct torture_test); - test->name = talloc_strdup(test, name); - test->description = NULL; + test->name = talloc_strdup(test, check_fn_name); + test->description = talloc_asprintf(test, "db_in:%s db_out:%s", + db_in_name, + db_out_name); test->run = wrap_ndr_inout_pull_test; data = talloc_zero(test, struct ndr_pull_test_data); data->data = db_out; @@ -333,6 +341,7 @@ _PUBLIC_ struct torture_test *_torture_suite_add_ndr_pull_invalid_data_test( struct torture_suite *suite, const char *name, ndr_pull_flags_fn_t pull_fn, + const char *db_name, DATA_BLOB db, size_t struct_size, int ndr_flags, @@ -347,7 +356,7 @@ _PUBLIC_ struct torture_test *_torture_suite_add_ndr_pull_invalid_data_test( test = talloc(tcase, struct torture_test); - test->name = talloc_strdup(test, name); + test->name = talloc_strdup(test, db_name); test->description = NULL; test->run = wrap_ndr_pull_invalid_data_test; diff --git a/source4/torture/ndr/ndr.h b/source4/torture/ndr/ndr.h index 84d691e6ced..8d553b80e15 100644 --- a/source4/torture/ndr/ndr.h +++ b/source4/torture/ndr/ndr.h @@ -31,10 +31,12 @@ _PUBLIC_ struct torture_test *_torture_suite_add_ndr_pullpush_test( ndr_push_flags_fn_t push_fn, ndr_print_fn_t print_fn, ndr_print_function_t print_function, + const char *db_name, DATA_BLOB db, size_t struct_size, int ndr_flags, int flags, + const char *check_fn_name, bool (*check_fn) (struct torture_context *, void *data)); _PUBLIC_ struct torture_test *_torture_suite_add_ndr_pull_inout_test( @@ -42,16 +44,20 @@ _PUBLIC_ struct torture_test *_torture_suite_add_ndr_pull_inout_test( const char *name, ndr_pull_flags_fn_t pull_fn, ndr_print_function_t print_fn, + const char *db_in_name, DATA_BLOB db_in, + const char *db_out_name, DATA_BLOB db_out, size_t struct_size, int flags, + const char *check_fn_name, bool (*check_fn) (struct torture_context *ctx, void *data)); _PUBLIC_ struct torture_test *_torture_suite_add_ndr_pull_invalid_data_test( struct torture_suite *suite, const char *name, ndr_pull_flags_fn_t pull_fn, + const char *db_name, DATA_BLOB db, size_t struct_size, int ndr_flags, @@ -69,9 +75,11 @@ _PUBLIC_ struct torture_test *_torture_suite_add_ndr_pull_invalid_data_test( NULL, \ (ndr_print_fn_t)ndr_print_ ## name, \ NULL, \ + #data, \ data_blob_const(data, sizeof(data)), \ sizeof(struct name), \ NDR_SCALARS|NDR_BUFFERS, 0, \ + #check_fn, \ check_fn_anon); \ } while(0) @@ -80,6 +88,7 @@ _PUBLIC_ struct torture_test *_torture_suite_add_ndr_pull_invalid_data_test( suite, \ #name, \ (ndr_pull_flags_fn_t)ndr_pull_ ## name, \ + #data, \ data_blob_const(data, sizeof(data)), \ sizeof(struct name), \ NDR_SCALARS|NDR_BUFFERS, 0, \ @@ -96,9 +105,11 @@ _PUBLIC_ struct torture_test *_torture_suite_add_ndr_pull_invalid_data_test( NULL, \ NULL, \ (ndr_print_function_t)ndr_print_ ## name, \ + #data, \ data_blob_const(data, sizeof(data)), \ sizeof(struct name), \ flags, 0, \ + #check_fn, \ check_fn_anon); \ } while(0) @@ -113,9 +124,11 @@ _PUBLIC_ struct torture_test *_torture_suite_add_ndr_pull_invalid_data_test( NULL, \ NULL, \ (ndr_print_function_t)ndr_print_ ## name, \ + #data, \ data_blob_const(data, sizeof(data)), \ sizeof(struct name), \ flags, flags2, \ + #check_fn, \ check_fn_anon); \ } while(0) @@ -130,9 +143,11 @@ _PUBLIC_ struct torture_test *_torture_suite_add_ndr_pull_invalid_data_test( (ndr_push_flags_fn_t)ndr_push_ ## name, \ (ndr_print_fn_t)ndr_print_ ## name, \ NULL, \ + #data, \ data_blob_const(data, sizeof(data)), \ sizeof(struct name), \ NDR_SCALARS|NDR_BUFFERS, 0, \ + #check_fn, \ check_fn_anon); \ } while(0) @@ -147,9 +162,11 @@ _PUBLIC_ struct torture_test *_torture_suite_add_ndr_pull_invalid_data_test( (ndr_push_flags_fn_t)ndr_push_ ## name, \ (ndr_print_fn_t)ndr_print_ ## name, \ NULL, \ + #data_blob, \ data_blob, \ sizeof(struct name), \ NDR_SCALARS|NDR_BUFFERS, 0, \ + #check_fn, \ check_fn_anon); \ } while(0) @@ -164,9 +181,11 @@ _PUBLIC_ struct torture_test *_torture_suite_add_ndr_pull_invalid_data_test( (ndr_push_flags_fn_t)ndr_push_ ## name, \ (ndr_print_fn_t)ndr_print_ ## name, \ NULL, \ + #b64, \ base64_decode_data_blob_talloc(suite, b64), \ sizeof(struct name), \ NDR_SCALARS|NDR_BUFFERS, 0, \ + #check_fn, \ check_fn_anon); \ } while(0) @@ -181,9 +200,11 @@ _PUBLIC_ struct torture_test *_torture_suite_add_ndr_pull_invalid_data_test( (ndr_push_flags_fn_t)ndr_push_ ## name, \ NULL, \ (ndr_print_function_t)ndr_print_ ## name, \ + #data, \ data_blob_const(data, sizeof(data)), \ sizeof(struct name), \ flags, flags2, \ + #check_fn, \ check_fn_anon); \ } while(0) @@ -196,10 +217,13 @@ _PUBLIC_ struct torture_test *_torture_suite_add_ndr_pull_invalid_data_test( _torture_suite_add_ndr_pull_inout_test(suite, #name "_INOUT", \ (ndr_pull_flags_fn_t)ndr_pull_ ## name, \ (ndr_print_function_t)ndr_print_ ## name, \ + #data_in, \ data_blob_const(data_in, sizeof(data_in)), \ + #data_out, \ data_blob_const(data_out, sizeof(data_out)), \ sizeof(struct name), \ 0, \ + #check_fn_out, \ check_fn_anon); \ } while(0) @@ -212,10 +236,13 @@ _PUBLIC_ struct torture_test *_torture_suite_add_ndr_pull_invalid_data_test( _torture_suite_add_ndr_pull_inout_test(suite, #name "_INOUT_" #flags, \ (ndr_pull_flags_fn_t)ndr_pull_ ## name, \ (ndr_print_function_t)ndr_print_ ## name, \ + #data_in, \ data_blob_const(data_in, sizeof(data_in)), \ + #data_out, \ data_blob_const(data_out, sizeof(data_out)), \ sizeof(struct name), \ flags, \ + #check_fn_out, \ check_fn_anon); \ } while(0)