#include "kds_s2000w_option_descriptors.h"
#include "kds_s2000w_debug.h"
-#define MAX_OPTION_COUNT 40
+#define MAX_OPTION_COUNT 41
SANE_Option_Descriptor* descriptor_array = NULL;
return descriptor;
}
+SANE_Option_Descriptor _kds_s2000w_option_descriptor_image_offset_y()
+{
+ kds_s2000w_debug_printf(ALL, "kds_s2000w_option_descriptor_image_offset_y");
+
+ SANE_Range* constraint = malloc(sizeof(SANE_Range));
+ constraint->min = 0;
+ constraint->max = 390;
+ constraint->quant = 1;
+
+ SANE_Option_Descriptor descriptor = {
+ "image-offset-y",
+ "Image offset y",
+ "Image offset y",
+ SANE_TYPE_INT,
+ SANE_UNIT_NONE,
+ sizeof(SANE_Int),
+ SANE_CAP_SOFT_DETECT | SANE_CAP_SOFT_SELECT,
+ SANE_CONSTRAINT_RANGE,
+ {.range = constraint}
+ };
+
+ return descriptor;
+}
+
void kds_s2000w_option_descriptors_init()
{
kds_s2000w_debug_printf(ALL, "kds_s2000w_option_descriptor_init_option_descriptors");
descriptor_array[36] = _kds_s2000w_option_descriptor_document_feeder_timeout();
descriptor_array[37] = _kds_s2000w_option_descriptor_color_contrast();
descriptor_array[38] = _kds_s2000w_option_descriptor_image_offset_x();
- descriptor_array[39] = _kds_s2000w_option_descriptor_config_reset();
+ descriptor_array[39] = _kds_s2000w_option_descriptor_image_offset_y();
+ descriptor_array[40] = _kds_s2000w_option_descriptor_config_reset();
}
void kds_s2000w_option_descriptors_free()
#include "kds_s2000w_client_mock.h"
#include "../src/kds_s2000w_option_descriptors.h"
-#define MAX_OPTION_COUNT 40
+#define MAX_OPTION_COUNT 41
int setup(void** state)
{
{
SANE_Option_Descriptor* option = kds_s2000w_option_descriptors_get(39);
+ assert_string_equal("image-offset-y", option->name);
+ assert_string_equal("Image offset y", option->title);
+ assert_string_equal("Image offset y", option->desc);
+ assert_int_equal(SANE_TYPE_INT, option->type);
+ assert_int_equal(SANE_UNIT_NONE, option->unit);
+ assert_int_equal(sizeof(SANE_Int), option->size);
+ assert_int_equal(SANE_CAP_SOFT_DETECT | SANE_CAP_SOFT_SELECT, option->cap);
+ assert_int_equal(SANE_CONSTRAINT_RANGE, option->constraint_type);
+ assert_int_equal(option->constraint.range->min, 0);
+ assert_int_equal(option->constraint.range->max, 390);
+ assert_int_equal(option->constraint.range->quant, 1);
+}
+
+void kds_s2000w_option_get_descriptor_fourty_test()
+{
+ SANE_Option_Descriptor* option = kds_s2000w_option_descriptors_get(40);
+
assert_string_equal("config-reset", option->name);
assert_string_equal("reset config", option->title);
assert_string_equal("load default configuration from scanner", option->desc);
void kds_s2000w_option_get_descriptor_thirdyseven_test();
void kds_s2000w_option_get_descriptor_thirdyeight_test();
void kds_s2000w_option_get_descriptor_thirdynine_test();
+void kds_s2000w_option_get_descriptor_fourty_test();
void kds_s2000w_option_get_descriptor_get_by_name_test();
void kds_s2000w_option_get_descriptor_over_max_options_test();
#endif
\ No newline at end of file
cmocka_unit_test_setup_teardown(kds_s2000w_option_get_descriptor_thirdyseven_test, setup, teardown),
cmocka_unit_test_setup_teardown(kds_s2000w_option_get_descriptor_thirdyeight_test, setup, teardown),
cmocka_unit_test_setup_teardown(kds_s2000w_option_get_descriptor_thirdynine_test, setup, teardown),
+ cmocka_unit_test_setup_teardown(kds_s2000w_option_get_descriptor_fourty_test, setup, teardown),
cmocka_unit_test_setup_teardown(kds_s2000w_option_get_descriptor_get_by_name_test, setup, teardown),
cmocka_unit_test_setup_teardown(kds_s2000w_option_get_descriptor_over_max_options_test, setup, teardown),
};