]> gitweb.hhaalo.de Git - sane-kds-s2000w-net.git/commitdiff
add option for jpeg quality
authorBastian Dehn <hhaalo@arcor.de>
Sun, 16 Feb 2025 08:57:52 +0000 (09:57 +0100)
committerBastian Dehn <hhaalo@arcor.de>
Sun, 16 Feb 2025 08:57:52 +0000 (09:57 +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 22db6ed7d7786281b4e299b6a80cb82eb3a865c5..1781baecab6da3cd879bb0997ed780bd02905011 100644 (file)
@@ -5,7 +5,7 @@
 #include "kds_s2000w_debug.h"
 
 #define AUTOSTART_ON 1
-#define OPTION_COUNT 29
+#define OPTION_COUNT 30
 
 void _kds_s2000w_handler_opts_write_string_value(json_object* value_object, void* value)
 {
@@ -225,6 +225,10 @@ void kds_s2000w_handler_opts_get_option(handler* h, uint32_t option, void* value
                        value_object = json_object_object_get(config, "TransportHandling");
                        _kds_s2000w_handler_opts_write_string_value(value_object, value);
                        break;
+               case 28:
+                       value_object = json_object_object_get(config, "JpegQuality");
+                       _kds_s2000w_handler_opts_write_string_value(value_object, value);
+                       break;
                default:
                        break;
        }
@@ -361,6 +365,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 28:
+                       value_object = json_object_object_get(config, "JpegQuality");
+                       _kds_s2000w_handler_opts_write_string_value_to_json(value_object, value);
+                       break;
+               case 29:
                        _kds_s2000w_handler_opts_set_option_to_default(h);
                        _kds_s2000w_handler_opts_set_autostart_on(h);
 
index 668ba81d388d55385d6783d03ba4c839b6aafab5..c8d77a61e8caed363643bebb4b8f8e90172be1c0 100644 (file)
@@ -22,7 +22,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, 29);
+       assert_int_equal(value, 30);
 
        kds_s2000w_handler_free(h);
        h = NULL;
@@ -400,6 +400,21 @@ void sane_kds_s2000w_net_control_get_option_twentyseven_test(void** state)
 
        assert_string_equal(value, "Normal");
 
+       kds_s2000w_handler_free(h);
+       h = NULL;
+}
+
+void sane_kds_s2000w_net_control_get_option_twentyeight_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, 28, SANE_ACTION_GET_VALUE, &value, NULL);
+
+       assert_string_equal(value, "Good");
+
        kds_s2000w_handler_free(h);
        h = NULL;
 }
\ No newline at end of file
index 5aeb97c881970e20cc7e52f1f96de2a6c2056065..9906e3c7496d0325ff2e7a50640e6f33ed4554b2 100644 (file)
@@ -32,5 +32,6 @@ void sane_kds_s2000w_net_control_get_option_twentyfour_test(void** state);
 void sane_kds_s2000w_net_control_get_option_twentyfive_test(void** state);
 void sane_kds_s2000w_net_control_get_option_twentysix_test(void** state);
 void sane_kds_s2000w_net_control_get_option_twentyseven_test(void** state);
+void sane_kds_s2000w_net_control_get_option_twentyeight_test(void** state);
 
 #endif
\ No newline at end of file
index 6c521e8348a79e70eb53e93705e8a058d421756b..ed168b1293b40a415f05179d93b77cbb2be61033 100644 (file)
@@ -101,7 +101,8 @@ int main()
                cmocka_unit_test_setup_teardown(sane_kds_s2000w_net_control_get_option_twentyfour_test, setup_default_get_option, teardown_default_get_option),
                cmocka_unit_test_setup_teardown(sane_kds_s2000w_net_control_get_option_twentyfive_test, setup_default_get_option, teardown_default_get_option),
                cmocka_unit_test_setup_teardown(sane_kds_s2000w_net_control_get_option_twentysix_test, setup_default_get_option, teardown_default_get_option),
-               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_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)
        };
 
        return cmocka_run_group_tests(net_tests, NULL, NULL);