From: Bastian Dehn Date: Sun, 16 Feb 2025 13:17:33 +0000 (+0100) Subject: add option skip blank page content X-Git-Tag: v1.1.0^2~4^2~17 X-Git-Url: https://gitweb.hhaalo.de/?a=commitdiff_plain;h=92e286ec2d5103bf50660c380fe2d57ecdef84be;p=sane-kds-s2000w-net.git add option skip blank page content --- diff --git a/src/kds_s2000w_handler_opts.c b/src/kds_s2000w_handler_opts.c index afc2474..5f356d9 100644 --- a/src/kds_s2000w_handler_opts.c +++ b/src/kds_s2000w_handler_opts.c @@ -6,7 +6,7 @@ #include "kds_s2000w_debug.h" #define AUTOSTART_ON 1 -#define OPTION_COUNT 34 +#define OPTION_COUNT 35 void _kds_s2000w_handler_opts_write_string_value(json_object* value_object, void* value) { @@ -262,6 +262,10 @@ void kds_s2000w_handler_opts_get_option(handler* h, uint32_t option, void* value value_object = json_object_object_get(config, "CroppingImage"); _kds_s2000w_handler_opts_write_string_value(value_object, value); break; + case 33: + value_object = json_object_object_get(config, "SkipBlankPagesContent"); + _kds_s2000w_handler_opts_write_int_value(value_object, value); + break; default: break; } @@ -298,7 +302,6 @@ void kds_s2000w_handler_opts_set_option(handler* h, uint32_t option, void* value case 3: value_object = json_object_object_get(config, "ColorMode"); _kds_s2000w_handler_opts_write_string_value_to_json(value_object, value); - value_object = NULL; if (info != NULL) *info = RELOAD_PARAMS; @@ -310,12 +313,10 @@ void kds_s2000w_handler_opts_set_option(handler* h, uint32_t option, void* value case 5: value_object = json_object_object_get(config, "ScanSide"); _kds_s2000w_handler_opts_write_string_value_to_json(value_object, value); - value_object = NULL; break; case 7: value_object = json_object_object_get(config, "SkipBlankPages"); _kds_s2000w_handler_opts_write_int_value_to_json(value_object, value); - value_object = NULL; break; case 8: value_object = json_object_object_get(config, "ColorDropOut"); @@ -408,7 +409,6 @@ void kds_s2000w_handler_opts_set_option(handler* h, uint32_t option, void* value case 30: value_object = json_object_object_get(config, "HoleFill"); _kds_s2000w_handler_opts_write_int_value_to_json(value_object, value); - value_object = NULL; break; case 31: value_object = json_object_object_get(config, "CroppingMode"); @@ -425,6 +425,10 @@ void kds_s2000w_handler_opts_set_option(handler* h, uint32_t option, void* value _kds_s2000w_handler_opts_write_string_value_to_json(value_object, value); break; case 33: + value_object = json_object_object_get(config, "SkipBlankPagesContent"); + _kds_s2000w_handler_opts_write_int_value_to_json(value_object, value); + break; + case 34: _kds_s2000w_handler_opts_set_option_to_default(h); _kds_s2000w_handler_opts_set_autostart_on(h); diff --git a/tests/kds_s2000w_net_get_opt_tests.c b/tests/kds_s2000w_net_get_opt_tests.c index 187c1d3..957cfa6 100644 --- a/tests/kds_s2000w_net_get_opt_tests.c +++ b/tests/kds_s2000w_net_get_opt_tests.c @@ -21,7 +21,7 @@ void sane_kds_s2000w_net_control_get_option_zero_test(void** state) sane_kds_s2000w_net_control_option(h, 0, SANE_ACTION_GET_VALUE, &value, NULL); - assert_int_equal(value, 34); + assert_int_equal(value, 35); kds_s2000w_handler_free(h); h = NULL; @@ -474,6 +474,21 @@ void sane_kds_s2000w_net_control_get_option_thirdytwo_test(void** state) assert_string_equal(value, "EntireDocument"); + kds_s2000w_handler_free(h); + h = NULL; +} + +void sane_kds_s2000w_net_control_get_option_thirdythree_test(void** state) +{ + handler* h = kds_s2000w_handler_init(); + response* resp = (response*) *state; + h->current_scanner_config = json_tokener_parse(resp->data); + uint32_t value = -1; + + sane_kds_s2000w_net_control_option(h, 33, SANE_ACTION_GET_VALUE, &value, NULL); + + assert_int_equal(value, 5); + kds_s2000w_handler_free(h); h = NULL; } \ No newline at end of file diff --git a/tests/kds_s2000w_net_get_opt_tests.h b/tests/kds_s2000w_net_get_opt_tests.h index b86873b..29540de 100644 --- a/tests/kds_s2000w_net_get_opt_tests.h +++ b/tests/kds_s2000w_net_get_opt_tests.h @@ -37,5 +37,6 @@ void sane_kds_s2000w_net_control_get_option_twentynine_test(void** state); void sane_kds_s2000w_net_control_get_option_thirdy_test(void** state); void sane_kds_s2000w_net_control_get_option_thirdyone_test(void** state); void sane_kds_s2000w_net_control_get_option_thirdytwo_test(void** state); +void sane_kds_s2000w_net_control_get_option_thirdythree_test(void** state); #endif \ No newline at end of file diff --git a/tests/kds_s2000w_net_get_opt_tests_run.c b/tests/kds_s2000w_net_get_opt_tests_run.c index e71af38..8dbb28b 100644 --- a/tests/kds_s2000w_net_get_opt_tests_run.c +++ b/tests/kds_s2000w_net_get_opt_tests_run.c @@ -106,7 +106,8 @@ int main() cmocka_unit_test_setup_teardown(sane_kds_s2000w_net_control_get_option_twentynine_test, setup_default_get_option, teardown_default_get_option), cmocka_unit_test_setup_teardown(sane_kds_s2000w_net_control_get_option_thirdy_test, setup_default_get_option, teardown_default_get_option), cmocka_unit_test_setup_teardown(sane_kds_s2000w_net_control_get_option_thirdyone_test, setup_default_get_option, teardown_default_get_option), - cmocka_unit_test_setup_teardown(sane_kds_s2000w_net_control_get_option_thirdytwo_test, setup_default_get_option, teardown_default_get_option) + cmocka_unit_test_setup_teardown(sane_kds_s2000w_net_control_get_option_thirdytwo_test, setup_default_get_option, teardown_default_get_option), + cmocka_unit_test_setup_teardown(sane_kds_s2000w_net_control_get_option_thirdythree_test, setup_default_get_option, teardown_default_get_option) }; return cmocka_run_group_tests(net_tests, NULL, NULL);