]> gitweb.hhaalo.de Git - sane-kds-s2000w-net.git/commitdiff
add option cropping mode
authorBastian Dehn <hhaalo@arcor.de>
Sun, 16 Feb 2025 10:09:31 +0000 (11:09 +0100)
committerBastian Dehn <hhaalo@arcor.de>
Sun, 16 Feb 2025 10:09:31 +0000 (11:09 +0100)
src/kds_s2000w_handler_opts.c
tests/kds_s2000w_net_get_opt_tests.c
tests/kds_s2000w_net_get_opt_tests.h
tests/kds_s2000w_net_get_opt_tests_run.c

index 7aef4586b03e6af36f98ca3b1280bc0523b34278..74d813dad77ba069cf211930a11a4f383ed53282 100644 (file)
@@ -5,7 +5,7 @@
 #include "kds_s2000w_debug.h"
 
 #define AUTOSTART_ON 1
-#define OPTION_COUNT 32
+#define OPTION_COUNT 33
 
 void _kds_s2000w_handler_opts_write_string_value(json_object* value_object, void* value)
 {
@@ -237,6 +237,10 @@ void kds_s2000w_handler_opts_get_option(handler* h, uint32_t option, void* value
                        value_object = json_object_object_get(config, "HoleFill");
                        _kds_s2000w_handler_opts_write_int_value(value_object, value);
                        break;
+               case 31:
+                       value_object = json_object_object_get(config, "CroppingMode");
+                       _kds_s2000w_handler_opts_write_string_value(value_object, value);
+                       break;
                default:
                        break;
        }
@@ -386,6 +390,10 @@ void kds_s2000w_handler_opts_set_option(handler* h, uint32_t option, void* value
                        value_object = NULL;
                        break;
                case 31:
+                       value_object = json_object_object_get(config, "CroppingMode");
+                       _kds_s2000w_handler_opts_write_string_value_to_json(value_object, value);
+                       break;
+               case 32:
                        _kds_s2000w_handler_opts_set_option_to_default(h);
                        _kds_s2000w_handler_opts_set_autostart_on(h);
 
index a23b5e7e6e43f476572f946d2ac9617328cd10f2..84399c8f532cc316cbc000930a3f2a6054e87b10 100644 (file)
@@ -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, 32);
+       assert_int_equal(value, 33);
 
        kds_s2000w_handler_free(h);
        h = NULL;
@@ -444,6 +444,21 @@ void sane_kds_s2000w_net_control_get_option_thirdy_test(void** state)
 
        assert_int_equal(value, 0);
 
+       kds_s2000w_handler_free(h);
+       h = NULL;
+}
+
+void sane_kds_s2000w_net_control_get_option_thirdyone_test(void** state)
+{
+       handler* h = kds_s2000w_handler_init();
+       response* resp = (response*) *state;
+       h->current_scanner_config = json_tokener_parse(resp->data);
+       char value[50] = {0};
+
+       sane_kds_s2000w_net_control_option(h, 31, SANE_ACTION_GET_VALUE, &value, NULL);
+
+       assert_string_equal(value, "AutomaticStraighten");
+
        kds_s2000w_handler_free(h);
        h = NULL;
 }
\ No newline at end of file
index 1510b4e67286401eb242b6bceb3af5da69dd8a86..ad55d2e1166a47d3e5a64bf4b753be11b3d11154 100644 (file)
@@ -35,5 +35,6 @@ void sane_kds_s2000w_net_control_get_option_twentyseven_test(void** state);
 void sane_kds_s2000w_net_control_get_option_twentyeight_test(void** state);
 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);
 
 #endif
\ No newline at end of file
index 36bcbba7594d9529795f2563565086965002fc3c..abe677ee5ae007ad0faaa90bf11e9e0eadd6a5fa 100644 (file)
@@ -104,7 +104,8 @@ int main()
                cmocka_unit_test_setup_teardown(sane_kds_s2000w_net_control_get_option_twentyseven_test, setup_default_get_option, teardown_default_get_option),
                cmocka_unit_test_setup_teardown(sane_kds_s2000w_net_control_get_option_twentyeight_test, setup_default_get_option, teardown_default_get_option),
                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_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)
        };
 
        return cmocka_run_group_tests(net_tests, NULL, NULL);