From d91c3bd91d9bd321731742a999737027a6cb7c40 Mon Sep 17 00:00:00 2001 From: Bastian Dehn Date: Fri, 23 Feb 2024 18:21:55 +0100 Subject: [PATCH] add test get metadata from handler --- tests/kds_s2000w_net_get_params_tests.c | 34 ++++++++++++++++++++++--- tests/runtests.c | 1 + 2 files changed, 31 insertions(+), 4 deletions(-) diff --git a/tests/kds_s2000w_net_get_params_tests.c b/tests/kds_s2000w_net_get_params_tests.c index b52eeb0..19151aa 100644 --- a/tests/kds_s2000w_net_get_params_tests.c +++ b/tests/kds_s2000w_net_get_params_tests.c @@ -6,14 +6,40 @@ START_TEST(kds_s2000w_net_get_parameters_invalid_metdata) { handler* h = init_handler(); h->read_info->scan_started = 1; - SANE_Parameters* params = malloc(sizeof(SANE_Parameters)); + SANE_Parameters params; - SANE_Status status = _sane_kds_s2000w_net_get_parameters(h, params); + SANE_Status status = _sane_kds_s2000w_net_get_parameters(h, ¶ms); ck_assert_int_eq(status, SANE_STATUS_UNSUPPORTED); - free(params); - params = NULL; + free_handler(h); + h = NULL; +} +END_TEST + +START_TEST(kds_s2000w_net_get_parameters_with_image_data) +{ + handler* h = init_handler(); + h->read_info->scan_started = 1; + h->current_metadata->valid = 1; + h->current_metadata->format = 1; + h->current_metadata->is_last = 1; + h->current_metadata->bytes_per_line = 42; + h->current_metadata->pixels_per_line = 1080; + h->current_metadata->lines = 100; + h->current_metadata->depth = 8; + SANE_Parameters params; + + SANE_Status status = _sane_kds_s2000w_net_get_parameters(h, ¶ms); + + ck_assert_int_eq(params.format, 1); + ck_assert_int_eq(params.last_frame, 1); + ck_assert_int_eq(params.bytes_per_line, 42); + ck_assert_int_eq(params.pixels_per_line, 1080); + ck_assert_int_eq(params.lines, 100); + ck_assert_int_eq(params.depth, 8); + ck_assert_int_eq(status, SANE_STATUS_GOOD); + free_handler(h); h = NULL; } diff --git a/tests/runtests.c b/tests/runtests.c index 69b0c8c..26f9a86 100644 --- a/tests/runtests.c +++ b/tests/runtests.c @@ -40,6 +40,7 @@ Suite* get_params() TCase* net_get_params = tcase_create("get parameters"); tcase_add_test(net_get_params, kds_s2000w_net_get_parameters_invalid_metdata); + tcase_add_test(net_get_params, kds_s2000w_net_get_parameters_with_image_data); suite_add_tcase(get_params, net_get_params); return get_params; } -- 2.39.5