diff --git a/src/shared/tester.c b/src/shared/tester.c
index e88dfab..1feaba4 100644
--- a/src/shared/tester.c
+++ b/src/shared/tester.c
tester_data_func_t test_func;
tester_data_func_t teardown_func;
tester_data_func_t post_teardown_func;
+ tester_data_func_t io_complete_func;
gdouble start_time;
gdouble end_time;
unsigned int timeout;
g_assert_cmpint(len, ==, iov->iov_len);
+ if (!test->iovcnt && test->io_complete_func)
+ test->io_complete_func(test->test_data);
+
return false;
}
g_assert_cmpint(len, ==, iov->iov_len);
+ if (memcmp(buf, iov->iov_base, len))
+ tester_monitor('!', 0x0004, 0x0000, iov->iov_base, len);
+
g_assert(memcmp(buf, iov->iov_base, len) == 0);
if (test->iovcnt)
io_set_write_handler(io, test_io_send, NULL, NULL);
+ else if (test->io_complete_func)
+ test->io_complete_func(test->test_data);
return true;
}
io_set_write_handler(ios[1], test_io_send, NULL, NULL);
}
+void tester_io_set_complete_func(tester_data_func_t func)
+{
+ struct test_case *test = tester_get_test();
+
+ test->io_complete_func = func;
+}
+
int tester_run(void)
{
int ret;
diff --git a/src/shared/tester.h b/src/shared/tester.h
index c28f61e..4961018 100644
--- a/src/shared/tester.h
+++ b/src/shared/tester.h
struct io *tester_setup_io(const struct iovec *iov, int iovcnt);
void tester_io_send(void);
+void tester_io_set_complete_func(tester_data_func_t func);