From 628e9d8a69711ba22deffef937c174f3ba477268 Mon Sep 17 00:00:00 2001 From: Bastian Dehn Date: Mon, 17 Feb 2025 16:51:19 +0100 Subject: [PATCH] add new group for color options --- src/kds_s2000w_handler_opts.c | 4 ++-- src/kds_s2000w_option_descriptors.c | 23 +++++++++++++++++-- tests/kds_s2000w_option_descriptor_tests.c | 16 ++++++++++++- tests/kds_s2000w_option_descriptor_tests.h | 1 + .../kds_s2000w_option_descriptor_tests_run.c | 1 + 5 files changed, 40 insertions(+), 5 deletions(-) diff --git a/src/kds_s2000w_handler_opts.c b/src/kds_s2000w_handler_opts.c index b2c323e..6ed465f 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 44 +#define OPTION_COUNT 45 void _kds_s2000w_handler_opts_write_string_value(json_object* value_object, void* value) { @@ -492,7 +492,7 @@ void kds_s2000w_handler_opts_set_option(handler* h, uint32_t option, void* value value_object = json_object_object_get(config, "ColorBalanceAggressiveness"); _kds_s2000w_handler_opts_write_int_value_to_json(value_object, value); break; - case 43: + case 44: _kds_s2000w_handler_opts_set_option_to_default(h); _kds_s2000w_handler_opts_set_autostart_on(h); diff --git a/src/kds_s2000w_option_descriptors.c b/src/kds_s2000w_option_descriptors.c index a78c972..8c7a344 100644 --- a/src/kds_s2000w_option_descriptors.c +++ b/src/kds_s2000w_option_descriptors.c @@ -4,7 +4,7 @@ #include "kds_s2000w_option_descriptors.h" #include "kds_s2000w_debug.h" -#define MAX_OPTION_COUNT 44 +#define MAX_OPTION_COUNT 45 SANE_Option_Descriptor* descriptor_array = NULL; @@ -1055,6 +1055,24 @@ SANE_Option_Descriptor _kds_s2000w_option_descriptor_boldness_smoothing_group() return descriptor; } +SANE_Option_Descriptor _kds_s2000w_option_descriptor_boldness_color_group() +{ + kds_s2000w_debug_printf(ALL, "kds_s2000w_option_descriptor_boldness_color_group"); + + SANE_Option_Descriptor descriptor = { + "color-options", + "Color Options", + "Color Options", + SANE_TYPE_GROUP, + SANE_UNIT_NONE, + 0, + SANE_CAP_SOFT_DETECT, + SANE_CONSTRAINT_NONE + }; + + return descriptor; +} + void kds_s2000w_option_descriptors_init() { kds_s2000w_debug_printf(ALL, "kds_s2000w_option_descriptor_init_option_descriptors"); @@ -1103,7 +1121,8 @@ void kds_s2000w_option_descriptors_init() descriptor_array[40] = _kds_s2000w_option_descriptor_color_sharpen(); descriptor_array[41] = _kds_s2000w_option_descriptor_color_balance_mode(); descriptor_array[42] = _kds_s2000w_option_descriptor_color_balancea_agressiveness(); - descriptor_array[43] = _kds_s2000w_option_descriptor_config_reset(); + descriptor_array[43] = _kds_s2000w_option_descriptor_boldness_color_group(); + descriptor_array[44] = _kds_s2000w_option_descriptor_config_reset(); } void kds_s2000w_option_descriptors_free() diff --git a/tests/kds_s2000w_option_descriptor_tests.c b/tests/kds_s2000w_option_descriptor_tests.c index 2d008b6..57b931e 100644 --- a/tests/kds_s2000w_option_descriptor_tests.c +++ b/tests/kds_s2000w_option_descriptor_tests.c @@ -4,7 +4,7 @@ #include "kds_s2000w_client_mock.h" #include "../src/kds_s2000w_option_descriptors.h" -#define MAX_OPTION_COUNT 44 +#define MAX_OPTION_COUNT 45 int setup(void** state) { @@ -769,6 +769,20 @@ void kds_s2000w_option_get_descriptor_fourtythree_test() { SANE_Option_Descriptor* option = kds_s2000w_option_descriptors_get(43); + assert_string_equal("color-options", option->name); + assert_string_equal("Color Options", option->title); + assert_string_equal("Color Options", option->desc); + assert_int_equal(SANE_TYPE_GROUP, option->type); + assert_int_equal(SANE_UNIT_NONE, option->unit); + assert_int_equal(0, option->size); + assert_int_equal(SANE_CAP_SOFT_DETECT, option->cap); + assert_int_equal(SANE_CONSTRAINT_NONE, option->constraint_type); +} + +void kds_s2000w_option_get_descriptor_fourtyfour_test() +{ + SANE_Option_Descriptor* option = kds_s2000w_option_descriptors_get(44); + assert_string_equal("config-reset", option->name); assert_string_equal("reset config", option->title); assert_string_equal("load default configuration from scanner", option->desc); diff --git a/tests/kds_s2000w_option_descriptor_tests.h b/tests/kds_s2000w_option_descriptor_tests.h index 9224b19..f101d01 100644 --- a/tests/kds_s2000w_option_descriptor_tests.h +++ b/tests/kds_s2000w_option_descriptor_tests.h @@ -52,6 +52,7 @@ void kds_s2000w_option_get_descriptor_fourty_test(); void kds_s2000w_option_get_descriptor_fourtyone_test(); void kds_s2000w_option_get_descriptor_fourtytwo_test(); void kds_s2000w_option_get_descriptor_fourtythree_test(); +void kds_s2000w_option_get_descriptor_fourtyfour_test(); void kds_s2000w_option_get_descriptor_get_by_name_test(); void kds_s2000w_option_get_descriptor_over_max_options_test(); #endif \ No newline at end of file diff --git a/tests/kds_s2000w_option_descriptor_tests_run.c b/tests/kds_s2000w_option_descriptor_tests_run.c index 1b0a54e..cb8672e 100644 --- a/tests/kds_s2000w_option_descriptor_tests_run.c +++ b/tests/kds_s2000w_option_descriptor_tests_run.c @@ -47,6 +47,7 @@ int main() cmocka_unit_test_setup_teardown(kds_s2000w_option_get_descriptor_fourtyone_test, setup, teardown), cmocka_unit_test_setup_teardown(kds_s2000w_option_get_descriptor_fourtytwo_test, setup, teardown), cmocka_unit_test_setup_teardown(kds_s2000w_option_get_descriptor_fourtythree_test, setup, teardown), + cmocka_unit_test_setup_teardown(kds_s2000w_option_get_descriptor_fourtyfour_test, setup, teardown), cmocka_unit_test_setup_teardown(kds_s2000w_option_get_descriptor_get_by_name_test, setup, teardown), cmocka_unit_test_setup_teardown(kds_s2000w_option_get_descriptor_over_max_options_test, setup, teardown), }; -- 2.39.5