h = NULL;
}
-void sane_kds_s2000w_net_start()
+void sane_kds_s2000w_net_start(void** state)
{
- response* resp_start = kds_s2000w_client_response_init();
- resp_start->code = 200;
- will_return(mock_response, resp_start);
+ response** response_list = (response**) *state;
+ will_return(mock_response, response_list[0]);
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);
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(mock_response, response_list[1]);
will_return(__wrap_kds_s2000w_client_get_image, 0);
- response* metadata_response = kds_s2000w_client_response_init();
- metadata_response->data = realloc(metadata_response->data, 107);
- const char* metadata = "{\
- \"Metadata\": {\
- \"BitDepth\": 8, \
- \"ImageSize\": 1, \
- \"ImageWidth\": 1000, \
- \"ImageHeight\": 1000, \
- }\
- }\0";
- memcpy(metadata_response->data, metadata, 107);
- metadata_response->code = 200;
- metadata_response->size = 107;
- will_return(mock_response, metadata_response);
+ will_return(mock_response, response_list[2]);
will_return(__wrap_kds_s2000w_client_get_metadata, 0);
- response* delete_response = kds_s2000w_client_response_init();
- delete_response->code = 200;
- delete_response->size = 0;
- will_return(mock_response, delete_response);
+ will_return(mock_response, response_list[3]);
will_return(__wrap_kds_s2000w_client_delete_image, 0);
handler* h = init_handler();
const char* test_config = "{\"Configuration\": { \"ColorMode\": \"Color\" } }";
json_object_put(h->current_scanner_config);
h->current_scanner_config = 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;
- kds_s2000w_client_response_free(metadata_response);
- metadata_response = NULL;
- kds_s2000w_client_response_free(delete_response);
- delete_response = NULL;
free_handler(h);
h = NULL;
}
return 0;
}
+int setup_net_start(void** state)
+{
+ response** response_list = malloc(sizeof(response*) * 5);
+ response_list[0] = kds_s2000w_client_response_init();
+ response_list[0]->code = 200;
+ response_list[1] = kds_s2000w_client_response_init();
+ response_list[1]->code = 200;
+ response_list[2] = kds_s2000w_client_response_init();
+ response_list[2]->data = realloc(response_list[2]->data, 107);
+ const char* metadata = "{\
+ \"Metadata\": {\
+ \"BitDepth\": 8, \
+ \"ImageSize\": 1, \
+ \"ImageWidth\": 1000, \
+ \"ImageHeight\": 1000, \
+ }\
+ }\0";
+ memcpy(response_list[2]->data, metadata, 107);
+ response_list[2]->code = 200;
+ response_list[2]->size = 107;
+ response_list[3] = kds_s2000w_client_response_init();
+ response_list[3]->code = 200;
+ response_list[4] = NULL;
+ *state = response_list;
+
+ return 0;
+}
+
+int teardown_net_start(void** state)
+{
+ response** respons_list = (response**) *state;
+ for (int i = 0; respons_list[i] != NULL; i++) {
+ kds_s2000w_client_response_free(respons_list[i]);
+ respons_list[i] = NULL;
+ }
+
+ free(respons_list);
+ respons_list = NULL;
+
+ return 0;
+}
+
int main()
{
const struct CMUnitTest net_tests[] = {
cmocka_unit_test_setup_teardown(sane_kds_s2000w_net_control_get_option_twentyone, setup_default_get_option, teardown_default_get_option),
cmocka_unit_test_setup_teardown(sane_kds_s2000w_net_control_get_option_twentytwo, setup_default_get_option, teardown_default_get_option),
cmocka_unit_test(sane_kds_s2000w_net_start_cancel),
- cmocka_unit_test(sane_kds_s2000w_net_start),
+ cmocka_unit_test_setup_teardown(sane_kds_s2000w_net_start, setup_net_start, teardown_net_start),
cmocka_unit_test(sane_kds_s2000w_net_get_parameter_cancel),
cmocka_unit_test(sane_kds_s2000w_net_cancel),
cmocka_unit_test(sane_kds_s2000w_net_open)