]> gitweb.hhaalo.de Git - sane-kds-s2000w-net.git/commitdiff
add mocked available options response
authorBastian Dehn <hhaalo@arcor.de>
Tue, 24 Mar 2026 16:49:54 +0000 (17:49 +0100)
committerBastian Dehn <hhaalo@arcor.de>
Tue, 24 Mar 2026 16:49:54 +0000 (17:49 +0100)
src/kds_s2000w_handler_opts.c
tests/kds_s2000w_net_tests.c

index 4c8593e8f905df123a86dec8e4e5c44b3b9cbef2..1704660d159841d83c9b711c78e40ec99a31079d 100644 (file)
@@ -556,7 +556,7 @@ mask_option_groups_t kds_s2000w_handler_get_available_options()
                .feeder_group = 0
        };
 
-       free(resp);
+       kds_s2000w_client_response_free(resp);
        resp = NULL;
        return available_options;
 }
index fc31f3067db77a60db6cc302d35188c00857858a..c0ee89dce9150f0e715bff9e6764718627060c18 100644 (file)
@@ -886,9 +886,62 @@ void kds_s2000w_handler_depth_eight_calc_bytes_per_line_tests()
 
 void kds_s2000w_handler_available_options_test()
 {
-       will_return(mock_response, NULL);
+       const char* all_options = "{ \
+               \"Defaults\":{ \
+                       \"DPI\":200, \
+                       \"ScanSide\":\"Duplex\", \
+                       \"ColorMode\":\"Color\", \
+                       \"SkipBlankPages\":0, \
+                       \"SkipBlankPagesContent\":5, \
+                       \"AutoStart\":0, \
+                       \"ColorDropOut\":\"None\", \
+                       \"ColorDropOutAggressiveness\":0, \
+                       \"OutputType\":\"Images\", \
+                       \"ColorAutoBrightnessMode\":\"Automatic\", \
+                       \"ColorBrightness\":0, \
+                       \"ColorContrast\":0, \
+                       \"ColorBalanceMode\":\"Automatic\", \
+                       \"ColorBalanceAggressiveness\":0, \
+                       \"ColorBalanceRed\":0, \
+                       \"ColorBalanceGreen\":0, \
+                       \"ColorBalanceBlue\":0, \
+                       \"ColorSharpen\":\"Normal\", \
+                       \"ForegroundBoldnessMode\":\"None\", \
+                       \"ForegroundBoldnessAggressiveness\":0, \
+                       \"BackgroundSmoothingMode\":\"None\", \
+                       \"BackgroundSmoothingAggressiveness\":0, \
+                       \"BinarizationMode\":\"iThresholding\", \
+                       \"BinarizationContrast\":0, \
+                       \"MaxDocumentLength\":140, \
+                       \"MultifeedSensitivity\":\"None\", \
+                       \"MultifeedResponse\":\"Stop\", \
+                       \"PostScanRotation\":\"Automatic\", \
+                       \"EdgeFill\":\"Automatic\", \
+                       \"ScanSource\":\"DocumentFeeder\", \
+                       \"ImageBorder\":\"None\", \
+                       \"TransportHandling\":\"Normal\", \
+                       \"JpegQuality\":\"Good\", \
+                       \"DocumentFeederTimeout\":2, \
+                       \"DocumentFeederTimeoutResponse\":\"Stop\", \
+                       \"HoleFill\":0, \
+                       \"CroppingMode\":\"AutomaticStraighten\", \
+                       \"CroppingImage\":\"EntireDocument\", \
+                       \"ImageOffsetX\":0, \
+                       \"ImageOffsetY\":0, \
+                       \"ImageWidth\":10, \
+                       \"ImageHeight\":10 \
+               } \
+       }";
+       response_t* resp = kds_s2000w_client_response_init();
+       resp->code = 200;
+       resp->size = 1251;
+       resp->data = malloc(sizeof(char) * resp->size);
+       memcpy(resp->data, all_options, resp->size);
+
+       will_return(mock_response, resp);
        will_return(__wrap_kds_s2000w_client_get_capabilities, 0);
        expect_function_call(__wrap_kds_s2000w_client_get_capabilities);
+
        mask_option_groups_t option_mask = kds_s2000w_handler_get_available_options();
 
        assert_int_equal(option_mask.stanard_group, 0);
@@ -897,6 +950,9 @@ void kds_s2000w_handler_available_options_test()
        assert_int_equal(option_mask.boldness_color_group, 0);
        assert_int_equal(option_mask.image_processing_group, 0);
        assert_int_equal(option_mask.feeder_group, 0);
+
+       kds_s2000w_client_response_free(resp);
+       resp = NULL;
 }
 
 int main()