${CMOCKA_LIBRARY}
sane-kds_s2000w_net-static)
-ADD_EXECUTABLE("kds_s2000w_net_tests_run"
- "kds_s2000w_net_tests_run.c"
+ADD_EXECUTABLE("kds_s2000w_net_tests"
"kds_s2000w_net_tests.c"
"kds_s2000w_client_mock.c")
-ADD_DEPENDENCIES("kds_s2000w_net_tests_run" sane-kds_s2000w_net-static)
-TARGET_LINK_LIBRARIES("kds_s2000w_net_tests_run"
+ADD_DEPENDENCIES("kds_s2000w_net_tests" sane-kds_s2000w_net-static)
+TARGET_LINK_LIBRARIES("kds_s2000w_net_tests"
${CMOCKA_LIBRARY}
sane-kds_s2000w_net-static)
ALL ./kds_s2000w_read_config_tests_run
COMMAND ./kds_s2000w_option_descriptor_tests_run
COMMAND ./kds_s2000w_net_get_opt_tests
- COMMAND ./kds_s2000w_net_tests_run
- COMMAND ./kds_s2000w_net_read_tests_run
+ COMMAND ./kds_s2000w_net_tests
+ COMMAND ./kds_s2000w_net_read_tests
COMMAND ./kds_s2000w_image_type_check_tests
COMMAND ./kds_s2000w_image_converter_tests
WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
DEPENDS "kds_s2000w_read_config_tests_run"
"kds_s2000w_option_descriptor_tests_run"
"kds_s2000w_net_get_opt_tests"
- "kds_s2000w_net_tests_run"
+ "kds_s2000w_net_tests"
"kds_s2000w_net_read_tests"
"kds_s2000w_image_type_check_tests"
"kds_s2000w_image_converter_tests")
#include <stdlib.h>
#include <sane/sane.h>
#include <string.h>
-#include "kds_s2000w_net_tests.h"
#include "kds_s2000w_client_mock.h"
#include "../src/kds_s2000w_client.h"
#include "../src/kds_s2000w_net.h"
+#include <stdarg.h>
+#include <stddef.h>
+#include <stdint.h>
+#include <setjmp.h>
+#include <cmocka.h>
#include <stdlib.h>
-#include <sane/sane.h>
#include <string.h>
-#include "kds_s2000w_net_tests.h"
+#include <sane/sane.h>
#include "kds_s2000w_client_mock.h"
#include "../src/kds_s2000w_client.h"
#include "../src/kds_s2000w_net.h"
#define MINOR 1
#define PATCH 8
+int setup(void** state)
+{
+ response** response_list = malloc(sizeof(response*) * 4);
+ response_list[0] = kds_s2000w_client_response_init();
+ response_list[0]->code = 200;
+ response_list[1] = kds_s2000w_client_response_init();
+ const char* metadata = "{\
+ \"Metadata\": {\
+ \"BitDepth\": 8, \
+ \"ImageSize\": 1, \
+ \"ImageWidth\": 1920, \
+ \"ImageHeight\": 1080, \
+ }\
+ }";
+ response_list[1]->size = 106;
+ response_list[1]->data = malloc(response_list[1]->size);
+ memcpy(response_list[1]->data, metadata, response_list[1]->size);
+ response_list[1]->code = 200;
+ response_list[2] = kds_s2000w_client_response_init();
+ response_list[2]->code = 200;
+ response_list[2]->size = 17;
+ response_list[2]->data = malloc(sizeof(char) * 17);
+ char* image_data = (char*) response_list[2]->data;
+ image_data[0] = 0x50;
+ image_data[1] = 0x36;
+ image_data[2] = 0x0a;
+ image_data[3] = 0x32;
+ image_data[4] = 0x20;
+ image_data[5] = 0x31;
+ image_data[6] = 0x0a;
+ image_data[7] = 0x32;
+ image_data[8] = 0x35;
+ image_data[9] = 0x35;
+ image_data[10] = 0x0a;
+ for (uint32_t i = 11; i < 17; i++) {
+ image_data[i] = 0xff;
+ }
+ response_list[3] = NULL;
+ *state = response_list;
+
+ return 0;
+}
+
+int teardown(void** state)
+{
+ response** respons_list = (response**) *state;
+ for (uint32_t 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;
+}
+
void kds_s2000w_net_init_test()
{
SANE_Int* version = malloc(sizeof(SANE_Int));
SANE_Device*** device_list = malloc(sizeof(SANE_Device**));
sane_kds_s2000w_net_get_devices(device_list, 0);
-
+
assert_string_equal(device_list[0][0]->name, "kds_s2000w_net");
assert_string_equal(device_list[0][0]->vendor, "Kodak");
assert_string_equal(device_list[0][0]->model, "Kodak Alaris s2000w series");
SANE_Status result = sane_kds_s2000w_net_get_select_fd(NULL, NULL);
assert_int_equal(result, SANE_STATUS_UNSUPPORTED);
+}
+
+int main()
+{
+ const struct CMUnitTest net_tests[] = {
+ cmocka_unit_test(kds_s2000w_net_init_test),
+ cmocka_unit_test(kds_s2000w_net_get_devices_test),
+ cmocka_unit_test(kds_s2000w_net_get_devices_only_remote_test),
+ cmocka_unit_test(sane_kds_s2000w_net_get_parameter_color_test),
+ cmocka_unit_test(sane_kds_s2000w_net_get_parameter_bw_test),
+ cmocka_unit_test(sane_kds_s2000w_net_open_test),
+ cmocka_unit_test(sane_kds_s2000w_net_open_busy_device_test),
+ cmocka_unit_test(sane_kds_s2000w_net_open_invalid_test),
+ cmocka_unit_test(sane_kds_s2000w_net_open_not_connected_test),
+ cmocka_unit_test_setup_teardown(sane_kds_s2000w_net_start_test, setup, teardown),
+ cmocka_unit_test_setup_teardown(sane_kds_s2000w_net_start_one_page_per_flatscan_test, setup, teardown),
+ cmocka_unit_test_setup_teardown(sane_kds_s2000w_net_start_one_page_per_feeder_test, setup, teardown),
+ cmocka_unit_test_setup_teardown(sane_kds_s2000w_net_start_two_pages_per_feeder_test, setup, teardown),
+ cmocka_unit_test(sane_kds_s2000w_net_cancel_test),
+ cmocka_unit_test(sane_kds_s2000w_net_cancel_start_test),
+ cmocka_unit_test(sane_kds_s2000w_net_cancel_canceled_test),
+ cmocka_unit_test(sane_kds_s2000w_net_cancel_completed_scan_feeder_test),
+ cmocka_unit_test(sane_kds_s2000w_net_cancel_completed_scan_flatbed_test),
+ cmocka_unit_test(kds_s2000w_net_set_io_mode_test),
+ cmocka_unit_test(kds_s2000w_net_get_select_fd_test)
+ };
+
+ return cmocka_run_group_tests(net_tests, NULL, NULL);
}
\ No newline at end of file
+++ /dev/null
-#ifndef KDS_S2000W_NET_TESTS_H
-#define KDS_S2000W_NET_TESTS_H
-#include <stdarg.h>
-#include <stddef.h>
-#include <stdint.h>
-#include <setjmp.h>
-#include <cmocka.h>
-
-void kds_s2000w_net_init_test();
-
-void kds_s2000w_net_get_devices_test();
-void kds_s2000w_net_get_devices_only_remote_test();
-
-void sane_kds_s2000w_net_get_parameter_color_test();
-void sane_kds_s2000w_net_get_parameter_bw_test();
-
-void sane_kds_s2000w_net_open_test();
-void sane_kds_s2000w_net_open_busy_device_test();
-void sane_kds_s2000w_net_open_invalid_test();
-void sane_kds_s2000w_net_open_not_connected_test();
-
-void sane_kds_s2000w_net_start_test(void** state);
-void sane_kds_s2000w_net_start_one_page_per_flatscan_test(void** state);
-void sane_kds_s2000w_net_start_one_page_per_feeder_test(void** state);
-void sane_kds_s2000w_net_start_two_pages_per_feeder_test(void** state);
-
-void sane_kds_s2000w_net_cancel_test();
-void sane_kds_s2000w_net_cancel_start_test();
-void sane_kds_s2000w_net_cancel_canceled_test();
-void sane_kds_s2000w_net_cancel_completed_scan_flatbed_test();
-void sane_kds_s2000w_net_cancel_completed_scan_feeder_test();
-
-void kds_s2000w_net_set_io_mode_test();
-void kds_s2000w_net_get_select_fd_test();
-
-#endif
\ No newline at end of file
+++ /dev/null
-#include <stdlib.h>
-#include <string.h>
-#include "kds_s2000w_net_tests.h"
-#include "../src/kds_s2000w_client.h"
-
-int setup(void** state)
-{
- response** response_list = malloc(sizeof(response*) * 4);
- response_list[0] = kds_s2000w_client_response_init();
- response_list[0]->code = 200;
- response_list[1] = kds_s2000w_client_response_init();
- const char* metadata = "{\
- \"Metadata\": {\
- \"BitDepth\": 8, \
- \"ImageSize\": 1, \
- \"ImageWidth\": 1920, \
- \"ImageHeight\": 1080, \
- }\
- }";
- response_list[1]->size = 106;
- response_list[1]->data = malloc(response_list[1]->size);
- memcpy(response_list[1]->data, metadata, response_list[1]->size);
- response_list[1]->code = 200;
- response_list[2] = kds_s2000w_client_response_init();
- response_list[2]->code = 200;
- response_list[2]->size = 17;
- response_list[2]->data = malloc(sizeof(char) * 17);
- char* image_data = (char*) response_list[2]->data;
- image_data[0] = 0x50;
- image_data[1] = 0x36;
- image_data[2] = 0x0a;
- image_data[3] = 0x32;
- image_data[4] = 0x20;
- image_data[5] = 0x31;
- image_data[6] = 0x0a;
- image_data[7] = 0x32;
- image_data[8] = 0x35;
- image_data[9] = 0x35;
- image_data[10] = 0x0a;
- for (uint32_t i = 11; i < 17; i++) {
- image_data[i] = 0xff;
- }
- response_list[3] = NULL;
- *state = response_list;
-
- return 0;
-}
-
-int teardown(void** state)
-{
- response** respons_list = (response**) *state;
- for (uint32_t 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(kds_s2000w_net_init_test),
- cmocka_unit_test(kds_s2000w_net_get_devices_test),
- cmocka_unit_test(kds_s2000w_net_get_devices_only_remote_test),
- cmocka_unit_test(sane_kds_s2000w_net_get_parameter_color_test),
- cmocka_unit_test(sane_kds_s2000w_net_get_parameter_bw_test),
- cmocka_unit_test(sane_kds_s2000w_net_open_test),
- cmocka_unit_test(sane_kds_s2000w_net_open_busy_device_test),
- cmocka_unit_test(sane_kds_s2000w_net_open_invalid_test),
- cmocka_unit_test(sane_kds_s2000w_net_open_not_connected_test),
- cmocka_unit_test_setup_teardown(sane_kds_s2000w_net_start_test, setup, teardown),
- cmocka_unit_test_setup_teardown(sane_kds_s2000w_net_start_one_page_per_flatscan_test, setup, teardown),
- cmocka_unit_test_setup_teardown(sane_kds_s2000w_net_start_one_page_per_feeder_test, setup, teardown),
- cmocka_unit_test_setup_teardown(sane_kds_s2000w_net_start_two_pages_per_feeder_test, setup, teardown),
- cmocka_unit_test(sane_kds_s2000w_net_cancel_test),
- cmocka_unit_test(sane_kds_s2000w_net_cancel_start_test),
- cmocka_unit_test(sane_kds_s2000w_net_cancel_canceled_test),
- cmocka_unit_test(sane_kds_s2000w_net_cancel_completed_scan_feeder_test),
- cmocka_unit_test(sane_kds_s2000w_net_cancel_completed_scan_flatbed_test),
- cmocka_unit_test(kds_s2000w_net_set_io_mode_test),
- cmocka_unit_test(kds_s2000w_net_get_select_fd_test)
- };
-
- return cmocka_run_group_tests(net_tests, NULL, NULL);
-}
\ No newline at end of file