]> gitweb.hhaalo.de Git - sane-kds-s2000w-net.git/commitdiff
mocking start status and get image response
authorBastian Dehn <hhaalo@arcor.de>
Sun, 24 Mar 2024 12:36:15 +0000 (13:36 +0100)
committerBastian Dehn <hhaalo@arcor.de>
Sun, 24 Mar 2024 12:36:15 +0000 (13:36 +0100)
tests/kds_s2000w_net_tests.c

index a7348b0434758f86616f176285951b04bb2a8ca3..a07a03021be5f93e54fb08425dbdd238bdcab27b 100644 (file)
@@ -82,28 +82,13 @@ int __wrap_kds_s2000w_client_stop_scan(int64_t sessionid, response* response)
 
 int __wrap_kds_s2000w_client_status_session(int64_t sessionid, response* response)
 {
-       response->data = realloc(response->data, 205);
-       const char* responsedata =      "{ \
-               \"Status\": { \
-                       \"NumImagesScanned\": 1, \
-                       \"NumImagesStored\": 2, \
-                       \"State\": \"Scanning\", \
-                       \"ErrorNum\": 0, \
-                       \"LastError\": \"Status: 200 Success\", \
-                       \"PaperDetected\": \"0\", \
-                       \"PercentAvailable\": 99 \
-               }}\0";
-
-       memcpy(response->data, responsedata, 205);
-
-       response->code = 200;
-       response->size = sizeof(response->data);
-
+       mock_response(response);
        return mock_type(int);
 }
 
 int __wrap_kds_s2000w_client_get_image(int64_t sessionid, int img_number, response* response)
 {
+       mock_response(response);
        return mock_type(int);
 }
 
@@ -591,11 +576,31 @@ void sane_kds_s2000w_net_start_cancel()
 
 void sane_kds_s2000w_net_start()
 {
-       response* resp = kds_s2000w_client_response_init();
-       resp->code = 200;
-       will_return(mock_response, resp);
+       response* resp_start = kds_s2000w_client_response_init();
+       resp_start->code = 200;
+       will_return(mock_response, resp_start);
        will_return(__wrap_kds_s2000w_client_start_scan, 0);
+       response* resp_status = kds_s2000w_client_response_init();
+       resp_status->data = realloc(resp_status->data, 205);
+       const char* status = "{ \
+               \"Status\": { \
+                       \"NumImagesScanned\": 1, \
+                       \"NumImagesStored\": 2, \
+                       \"State\": \"Scanning\", \
+                       \"ErrorNum\": 0, \
+                       \"LastError\": \"Status: 200 Success\", \
+                       \"PaperDetected\": \"0\", \
+                       \"PercentAvailable\": 99 \
+               }}\0";
+       memcpy(resp_status->data, status, 205);
+       resp_status->code = 200;
+       resp_status->size = 205;
+       will_return(mock_response, resp_status);
        will_return(__wrap_kds_s2000w_client_status_session, 0);
+       response* resp_get_image = kds_s2000w_client_response_init();
+       resp_get_image->code = 200;
+       resp_get_image->size = 0;
+       will_return(mock_response, resp_get_image);
        will_return(__wrap_kds_s2000w_client_get_image, 0);
        will_return(__wrap_kds_s2000w_client_get_metadata, 0);
        will_return(__wrap_kds_s2000w_client_delete_image, 0);
@@ -616,8 +621,12 @@ void sane_kds_s2000w_net_start()
 
        json_object_put(h->current_scanner_config);
        h->current_scanner_config = NULL;
-       kds_s2000w_client_response_free(resp);
-       resp = NULL;
+       kds_s2000w_client_response_free(resp_start);
+       resp_start = NULL;
+       kds_s2000w_client_response_free(resp_status);
+       resp_status = NULL;
+       kds_s2000w_client_response_free(resp_get_image);
+       resp_get_image = NULL;
        free_handler(h);
        h = NULL;
 }