]> gitweb.hhaalo.de Git - sane-kds-s2000w-net.git/commitdiff
add test for first read params
authorBastian Dehn <hhaalo@arcor.de>
Sat, 17 Feb 2024 07:48:09 +0000 (08:48 +0100)
committerBastian Dehn <hhaalo@arcor.de>
Sat, 17 Feb 2024 07:48:09 +0000 (08:48 +0100)
tests/kds_s2000w_net_get_params_tests.c
tests/kds_s2000w_net_read_tests.c
tests/runtests.c

index 48907b5ceeaacb86a0e04d5d3aa591a910fabf7f..855d73ab45f85cfb345af00bf092b1b713b0548a 100644 (file)
@@ -1,7 +1,6 @@
 #include <check.h>
 #include <stdlib.h>
 #include <sane/sane.h>
-#include "../src/kds_s2000w_handler.h"
 
 START_TEST(kds_s2000w_net_get_parameters_defaults)
 {
@@ -19,4 +18,47 @@ START_TEST(kds_s2000w_net_get_parameters_defaults)
        free(params);
        params = NULL;
 }
+END_TEST
+
+START_TEST(kds_s2000w_net_get_parameters_invalid_metdata)
+{
+       readinfo* read_info = get_read_info();
+       read_info->scan_started = 1;
+       mdata.valid = 0;
+       SANE_Parameters* params = malloc(sizeof(SANE_Parameters));
+
+       SANE_Status status = _sane_kds_s2000w_net_get_parameters(NULL, params);
+
+       ck_assert_int_eq(status, SANE_STATUS_UNSUPPORTED);
+       
+       free(params);
+       params = NULL;
+}
+END_TEST
+
+START_TEST(kds_s2000w_net_get_parameters_first_scan_params)
+{
+       readinfo* read_info = get_read_info();
+       read_info->scan_started = 1;
+       mdata.valid = 1;
+       mdata.format = 1;
+       mdata.is_last = 1;
+       mdata.bytes_per_line = 50;
+       mdata.pixels_per_line = 100;
+       mdata.lines = 32;
+       mdata.depth = 8;
+       SANE_Parameters* params = malloc(sizeof(SANE_Parameters));
+
+       _sane_kds_s2000w_net_get_parameters(NULL, params);
+
+       ck_assert_int_eq(params->format, 1);
+       ck_assert_int_eq(params->last_frame, 1);
+       ck_assert_int_eq(params->bytes_per_line, 50);
+       ck_assert_int_eq(params->pixels_per_line, 100);
+       ck_assert_int_eq(params->lines, 32);
+       ck_assert_int_eq(params->depth, 8);
+       
+       free(params);
+       params = NULL;
+}
 END_TEST
\ No newline at end of file
index 9640664e1a2b669fb9a878d3e2a56c86111422d3..e7065f2e5e897a733c6fe39f7f143ee3e1e4630d 100644 (file)
@@ -1,16 +1,6 @@
 #include <check.h>
 #include <stdlib.h>
 #include <sane/sane.h>
-#include "../src/kds_s2000w_handler.h"
-#define kds_s2000w_handler_stop_scan void_mock
-#define kds_s2000w_handler_close void_mock
-#define kds_s2000w_handler_open state_mock
-current_state* state_mock() { return NULL; }
-void void_mock() {}
-#include "../src/kds_s2000w_net.c"
-#undef kds_s2000w_handler_stop_scan
-#undef kds_s2000w_handler_close
-#undef kds_s2000w_handler_open
 
 START_TEST(sane_kds_s2000w_net_find_first_data_byte_test)
 {
index 7f79d742f7438842181b37c6612b0604c510b7dd..5043b435a8c6d8e31b32b413999bb7d1b416c9bc 100644 (file)
@@ -1,4 +1,25 @@
 #include <check.h>
+#include "../src/kds_s2000w_handler.h"
+
+metadata mdata;
+
+#define sleep no_sleep
+#define kds_s2000w_handler_get_parameters mock_get_params
+#define kds_s2000w_handler_stop_scan void_mock
+#define kds_s2000w_handler_close void_mock
+#define kds_s2000w_handler_open state_mock
+uint no_sleep(uint secondes) {}
+metadata mock_get_params() {
+       return mdata;
+}
+current_state* state_mock() { return NULL; }
+void void_mock() {}
+#include "../src/kds_s2000w_net.c"
+#undef kds_s2000w_handler_stop_scan
+#undef kds_s2000w_handler_close
+#undef kds_s2000w_handler_open
+#undef kds_s2000w_handler_get_parameters
+#undef sleep
 #include "kds_s2000w_net_read_tests.c"
 #include "kds_s2000w_net_get_params_tests.c"
 
@@ -23,6 +44,8 @@ Suite* get_params()
 
        TCase* net_get_params = tcase_create("get parameters");
        tcase_add_test(net_get_params, kds_s2000w_net_get_parameters_defaults);
+       tcase_add_test(net_get_params, kds_s2000w_net_get_parameters_invalid_metdata);
+       tcase_add_test(net_get_params, kds_s2000w_net_get_parameters_first_scan_params);
 
        suite_add_tcase(get_params, net_get_params);
        return get_params;