From 760c8def9c11d8ebe6efebda9342c3edcf36951f Mon Sep 17 00:00:00 2001 From: Shuhei Matsumoto Date: Mon, 10 Dec 2018 09:10:56 +0900 Subject: [PATCH] ut/scsi: Use STUB in SCSI unit tests Change-Id: I74f2de3310341504850bd9034baefce6126f540f Signed-off-by: Shuhei Matsumoto Reviewed-on: https://review.gerrithub.io/436645 Tested-by: SPDK CI Jenkins Chandler-Test-Pool: SPDK Automated Test System Reviewed-by: Jim Harris Reviewed-by: Ben Walker --- test/unit/lib/scsi/dev.c/dev_ut.c | 50 ++++-------- test/unit/lib/scsi/lun.c/lun_ut.c | 77 +++++++------------ test/unit/lib/scsi/scsi_bdev.c/scsi_bdev_ut.c | 37 +++------ 3 files changed, 53 insertions(+), 111 deletions(-) diff --git a/test/unit/lib/scsi/dev.c/dev_ut.c b/test/unit/lib/scsi/dev.c/dev_ut.c index 5b9b9d9f8..d4ec3daaf 100644 --- a/test/unit/lib/scsi/dev.c/dev_ut.c +++ b/test/unit/lib/scsi/dev.c/dev_ut.c @@ -41,6 +41,8 @@ #include "scsi/dev.c" #include "scsi/port.c" +#include "spdk_internal/mock.h" + /* Unit test bdev mockup */ struct spdk_bdev { char name[100]; @@ -111,48 +113,26 @@ spdk_bdev_get_by_name(const char *bdev_name) return NULL; } -void -spdk_scsi_lun_append_mgmt_task(struct spdk_scsi_lun *lun, struct spdk_scsi_task *task) -{ -} +DEFINE_STUB_V(spdk_scsi_lun_append_mgmt_task, + (struct spdk_scsi_lun *lun, struct spdk_scsi_task *task)); -void -spdk_scsi_lun_execute_mgmt_task(struct spdk_scsi_lun *lun) -{ -} +DEFINE_STUB_V(spdk_scsi_lun_execute_mgmt_task, (struct spdk_scsi_lun *lun)); -bool -spdk_scsi_lun_has_pending_mgmt_tasks(const struct spdk_scsi_lun *lun) -{ - return false; -} +DEFINE_STUB(spdk_scsi_lun_has_pending_mgmt_tasks, bool, + (const struct spdk_scsi_lun *lun), false); -void -spdk_scsi_lun_append_task(struct spdk_scsi_lun *lun, struct spdk_scsi_task *task) -{ -} +DEFINE_STUB_V(spdk_scsi_lun_append_task, + (struct spdk_scsi_lun *lun, struct spdk_scsi_task *task)); -void -spdk_scsi_lun_execute_tasks(struct spdk_scsi_lun *lun) -{ -} +DEFINE_STUB_V(spdk_scsi_lun_execute_tasks, (struct spdk_scsi_lun *lun)); -int -_spdk_scsi_lun_allocate_io_channel(struct spdk_scsi_lun *lun) -{ - return 0; -} +DEFINE_STUB(_spdk_scsi_lun_allocate_io_channel, int, + (struct spdk_scsi_lun *lun), 0); -void -_spdk_scsi_lun_free_io_channel(struct spdk_scsi_lun *lun) -{ -} +DEFINE_STUB_V(_spdk_scsi_lun_free_io_channel, (struct spdk_scsi_lun *lun)); -bool -spdk_scsi_lun_has_pending_tasks(const struct spdk_scsi_lun *lun) -{ - return false; -} +DEFINE_STUB(spdk_scsi_lun_has_pending_tasks, bool, + (const struct spdk_scsi_lun *lun), false); static void dev_destruct_null_dev(void) diff --git a/test/unit/lib/scsi/lun.c/lun_ut.c b/test/unit/lib/scsi/lun.c/lun_ut.c index e4cb01552..c47d15ae4 100644 --- a/test/unit/lib/scsi/lun.c/lun_ut.c +++ b/test/unit/lib/scsi/lun.c/lun_ut.c @@ -75,26 +75,18 @@ spdk_poller_unregister(struct spdk_poller **ppoller) } } -void -spdk_thread_send_msg(const struct spdk_thread *thread, spdk_thread_fn fn, void *ctx) -{ -} +DEFINE_STUB_V(spdk_thread_send_msg, + (const struct spdk_thread *thread, spdk_thread_fn fn, void *ctx)); struct spdk_trace_histories *g_trace_histories; -void _spdk_trace_record(uint64_t tsc, uint16_t tpoint_id, uint16_t poller_id, - uint32_t size, uint64_t object_id, uint64_t arg1) -{ -} -uint64_t spdk_get_ticks(void) -{ - return 0; -} +DEFINE_STUB_V(_spdk_trace_record, + (uint64_t tsc, uint16_t tpoint_id, uint16_t poller_id, + uint32_t size, uint64_t object_id, uint64_t arg1)); -uint64_t spdk_get_ticks_hz(void) -{ - return 0; -} +DEFINE_STUB(spdk_get_ticks, uint64_t, (void), 0); + +DEFINE_STUB(spdk_get_ticks_hz, uint64_t, (void), 0); static void spdk_lun_ut_cpl_task(struct spdk_scsi_task *task) @@ -149,34 +141,21 @@ spdk_bdev_free_io(struct spdk_bdev_io *bdev_io) CU_ASSERT(0); } -int -spdk_bdev_open(struct spdk_bdev *bdev, bool write, spdk_bdev_remove_cb_t remove_cb, - void *remove_ctx, struct spdk_bdev_desc **desc) -{ - return 0; -} +DEFINE_STUB(spdk_bdev_open, int, + (struct spdk_bdev *bdev, bool write, spdk_bdev_remove_cb_t remove_cb, + void *remove_ctx, struct spdk_bdev_desc **desc), + 0); -void -spdk_bdev_close(struct spdk_bdev_desc *desc) -{ -} +DEFINE_STUB_V(spdk_bdev_close, (struct spdk_bdev_desc *desc)); -const char * -spdk_bdev_get_name(const struct spdk_bdev *bdev) -{ - return "test"; -} +DEFINE_STUB(spdk_bdev_get_name, const char *, + (const struct spdk_bdev *bdev), "test"); -void spdk_scsi_dev_queue_mgmt_task(struct spdk_scsi_dev *dev, - struct spdk_scsi_task *task) -{ -} +DEFINE_STUB_V(spdk_scsi_dev_queue_mgmt_task, + (struct spdk_scsi_dev *dev, struct spdk_scsi_task *task)); -void spdk_scsi_dev_delete_lun(struct spdk_scsi_dev *dev, - struct spdk_scsi_lun *lun) -{ - return; -} +DEFINE_STUB_V(spdk_scsi_dev_delete_lun, + (struct spdk_scsi_dev *dev, struct spdk_scsi_lun *lun)); void spdk_bdev_scsi_reset(struct spdk_scsi_task *task) @@ -205,19 +184,15 @@ spdk_bdev_scsi_execute(struct spdk_scsi_task *task) } } -struct spdk_io_channel * -spdk_bdev_get_io_channel(struct spdk_bdev_desc *desc) -{ - return NULL; -} +DEFINE_STUB(spdk_bdev_get_io_channel, struct spdk_io_channel *, + (struct spdk_bdev_desc *desc), NULL); -void -spdk_put_io_channel(struct spdk_io_channel *ch) -{ -} +DEFINE_STUB_V(spdk_put_io_channel, (struct spdk_io_channel *ch)); -DEFINE_STUB(spdk_io_channel_get_thread, struct spdk_thread *, (struct spdk_io_channel *ch), NULL) -DEFINE_STUB(spdk_get_thread, struct spdk_thread *, (void), NULL) +DEFINE_STUB(spdk_io_channel_get_thread, struct spdk_thread *, + (struct spdk_io_channel *ch), NULL); + +DEFINE_STUB(spdk_get_thread, struct spdk_thread *, (void), NULL); static _spdk_scsi_lun * lun_construct(void) diff --git a/test/unit/lib/scsi/scsi_bdev.c/scsi_bdev_ut.c b/test/unit/lib/scsi/scsi_bdev.c/scsi_bdev_ut.c index 60c83ac5d..025e3181b 100644 --- a/test/unit/lib/scsi/scsi_bdev.c/scsi_bdev_ut.c +++ b/test/unit/lib/scsi/scsi_bdev.c/scsi_bdev_ut.c @@ -38,6 +38,8 @@ #include "spdk_cunit.h" +#include "spdk_internal/mock.h" + SPDK_LOG_REGISTER_COMPONENT("scsi", SPDK_LOG_SCSI) struct spdk_scsi_globals g_spdk_scsi; @@ -91,17 +93,11 @@ spdk_bdev_free_io(struct spdk_bdev_io *bdev_io) CU_ASSERT(0); } -const char * -spdk_bdev_get_name(const struct spdk_bdev *bdev) -{ - return "test"; -} +DEFINE_STUB(spdk_bdev_get_name, const char *, + (const struct spdk_bdev *bdev), "test"); -uint32_t -spdk_bdev_get_block_size(const struct spdk_bdev *bdev) -{ - return 512; -} +DEFINE_STUB(spdk_bdev_get_block_size, uint32_t, + (const struct spdk_bdev *bdev), 512); uint64_t spdk_bdev_get_num_blocks(const struct spdk_bdev *bdev) @@ -109,17 +105,11 @@ spdk_bdev_get_num_blocks(const struct spdk_bdev *bdev) return g_test_bdev_num_blocks; } -const char * -spdk_bdev_get_product_name(const struct spdk_bdev *bdev) -{ - return "test product"; -} +DEFINE_STUB(spdk_bdev_get_product_name, const char *, + (const struct spdk_bdev *bdev), "test product"); -bool -spdk_bdev_has_write_cache(const struct spdk_bdev *bdev) -{ - return false; -} +DEFINE_STUB(spdk_bdev_has_write_cache, bool, + (const struct spdk_bdev *bdev), false); void spdk_scsi_lun_complete_task(struct spdk_scsi_lun *lun, struct spdk_scsi_task *task) @@ -127,10 +117,8 @@ spdk_scsi_lun_complete_task(struct spdk_scsi_lun *lun, struct spdk_scsi_task *ta g_scsi_cb_called++; } -void -spdk_scsi_lun_complete_reset_task(struct spdk_scsi_lun *lun, struct spdk_scsi_task *task) -{ -} +DEFINE_STUB_V(spdk_scsi_lun_complete_reset_task, + (struct spdk_scsi_lun *lun, struct spdk_scsi_task *task)); static void ut_put_task(struct spdk_scsi_task *task) @@ -145,7 +133,6 @@ ut_put_task(struct spdk_scsi_task *task) SPDK_CU_ASSERT_FATAL(TAILQ_EMPTY(&g_bdev_io_queue)); } - static void ut_init_task(struct spdk_scsi_task *task) {