h = NULL;
}
-void sane_kds_s2000w_net_get_parameter()
+void sane_kds_s2000w_net_get_parameter_color()
{
handler* h = init_handler();
const char* config = "{\"Configuration\":{\"ColorMode\":\"Color\"}}";
params = NULL;
}
+void sane_kds_s2000w_net_get_parameter_bw()
+{
+ handler* h = init_handler();
+ const char* config = "{\"Configuration\":{\"ColorMode\":\"Color\"}}";
+ h->current_scanner_config = json_tokener_parse(config);
+ h->image->size = 17;
+ h->image->data = malloc(sizeof(char) * 17);
+ char* image_data = (char*) h->image->data;
+ image_data[0] = 0x50;
+ image_data[1] = 0x34;
+ image_data[2] = 0x0a;
+ image_data[3] = 0x32;
+ image_data[4] = 0x20;
+ image_data[5] = 0x31;
+ image_data[6] = 0x0a;
+ for (int i = 7; i < 17; i++) {
+ image_data[i] = 0xff;
+ }
+
+ SANE_Parameters* params = malloc(sizeof(SANE_Parameters));
+
+ SANE_Status status = _sane_kds_s2000w_net_get_parameters(h, params);
+
+ assert_int_equal(status, SANE_STATUS_GOOD);
+ assert_int_equal(params->format, 1);
+ assert_int_equal(params->last_frame, 1);
+ assert_int_equal(params->bytes_per_line, 3);
+ assert_int_equal(params->pixels_per_line, 2);
+ assert_int_equal(params->lines, 1);
+ assert_int_equal(params->depth, 1);
+ assert_int_equal(h->read_info->read_size, 7);
+
+ free_handler(h);
+ h = NULL;
+ free(params);
+ params = NULL;
+}
+
+
void sane_kds_s2000w_net_cancel()
{
response* resp_status = kds_s2000w_client_response_init();
void sane_kds_s2000w_net_start_one_page_per_flatscan(void** state);
void sane_kds_s2000w_net_start_one_page_per_feeder(void** state);
void sane_kds_s2000w_net_start_two_pages_per_feeder(void** state);
-void sane_kds_s2000w_net_get_parameter();
+void sane_kds_s2000w_net_get_parameter_color();
+void sane_kds_s2000w_net_get_parameter_bw();
void sane_kds_s2000w_net_cancel();
void sane_kds_s2000w_net_cancel_completed_scan_feeder();
void sane_kds_s2000w_net_open();
cmocka_unit_test(sane_kds_s2000w_net_open_busy_device),
cmocka_unit_test(sane_kds_s2000w_net_open_invalid),
cmocka_unit_test(sane_kds_s2000w_net_open_not_connected),
- cmocka_unit_test(sane_kds_s2000w_net_get_parameter),
+ cmocka_unit_test(sane_kds_s2000w_net_get_parameter_color),
+ cmocka_unit_test(sane_kds_s2000w_net_get_parameter_bw),
cmocka_unit_test_setup_teardown(sane_kds_s2000w_net_start, setup_net_start, teardown_net_start),
cmocka_unit_test_setup_teardown(sane_kds_s2000w_net_start_one_page_per_flatscan, setup_net_start, teardown_net_start),
cmocka_unit_test_setup_teardown(sane_kds_s2000w_net_start_one_page_per_feeder, setup_net_start, teardown_net_start),