From b9480745a6c2dabe6ae24811158e03216cfeab63 Mon Sep 17 00:00:00 2001 From: Andreas Rogge Date: Mon, 16 Aug 2021 15:59:51 +0200 Subject: [PATCH] droplet: improve testability of existing code --- core/src/droplet/libdroplet/src/backend/posix/backend.c | 4 ++-- core/src/stored/backends/chunked_device.cc | 2 +- core/src/stored/backends/droplet_device.cc | 1 + core/src/tests/CMakeLists.txt | 2 +- .../configs/sd_backend/bareos-sd.d/storage/myself.conf.in | 1 + 5 files changed, 6 insertions(+), 4 deletions(-) diff --git a/core/src/droplet/libdroplet/src/backend/posix/backend.c b/core/src/droplet/libdroplet/src/backend/posix/backend.c index 30b7028c49c..2842c4bd051 100644 --- a/core/src/droplet/libdroplet/src/backend/posix/backend.c +++ b/core/src/droplet/libdroplet/src/backend/posix/backend.c @@ -717,7 +717,7 @@ static dpl_status_t posix_get(const char* path, int range_len; offset = range->start; - range_len = range->start - range->end; + range_len = range->end - range->start; if (data_len < range_len) { ret = DPL_EINVAL; goto end; @@ -753,7 +753,7 @@ static dpl_status_t posix_get(const char* path, goto end; } - if (data_len != cc) { + if (length != cc) { ret = DPL_FAILURE; goto end; } diff --git a/core/src/stored/backends/chunked_device.cc b/core/src/stored/backends/chunked_device.cc index 2442e83c8c2..f6a909f242c 100644 --- a/core/src/stored/backends/chunked_device.cc +++ b/core/src/stored/backends/chunked_device.cc @@ -522,7 +522,7 @@ bool ChunkedDevice::FlushChunk(bool release_chunk, bool move_to_next_chunk) retval = EnqueueChunk(&request); } else { // no multithreading - Dmsg1(100, "Try to flush chunk number: %d", request.chunk); + Dmsg1(100, "Try to flush chunk number: %d\n", request.chunk); retval = FlushRemoteChunk(&request); } diff --git a/core/src/stored/backends/droplet_device.cc b/core/src/stored/backends/droplet_device.cc index 00523acc09c..7e169312197 100644 --- a/core/src/stored/backends/droplet_device.cc +++ b/core/src/stored/backends/droplet_device.cc @@ -644,6 +644,7 @@ bool DropletDevice::ReadRemoteChunk(chunk_io_request* request) default: Mmsg2(errmsg, _("Failed to read %s using dpl_fget(): ERR=%s.\n"), chunk_name.c_str(), dpl_status_str(status)); + Dmsg1(100, "%s", errmsg); dev_errno = DropletErrnoToSystemErrno(status); Bmicrosleep(INFLIGT_RETRY_TIME, 0); ++tries; diff --git a/core/src/tests/CMakeLists.txt b/core/src/tests/CMakeLists.txt index e7c433e3f69..e15da4bdd9c 100644 --- a/core/src/tests/CMakeLists.txt +++ b/core/src/tests/CMakeLists.txt @@ -329,7 +329,7 @@ if(NOT client-only) endif() if(NOT client-only) - bareos_add_test(sd_backend LINK_LIBRARIES ${LINK_LIBRARIES} GTest::gmock) + bareos_add_test(sd_backend LINK_LIBRARIES ${LINK_LIBRARIES}) endif() if(NOT client-only) diff --git a/core/src/tests/configs/sd_backend/bareos-sd.d/storage/myself.conf.in b/core/src/tests/configs/sd_backend/bareos-sd.d/storage/myself.conf.in index 394794a4434..bc16b3bda0b 100644 --- a/core/src/tests/configs/sd_backend/bareos-sd.d/storage/myself.conf.in +++ b/core/src/tests/configs/sd_backend/bareos-sd.d/storage/myself.conf.in @@ -1,4 +1,5 @@ Storage { Name = test-sd @UNCOMMENT_SD_BACKEND_DIRECTORY@Backend Directory = @PROJECT_BINARY_DIR@/src/stored/backends + Working Directory = @PROJECT_BINARY_DIR@/ }