isolate test directory

This commit is contained in:
Scott E. Graves 2024-07-16 09:16:59 -05:00
parent fbfb528adc
commit cd484aa7bb
7 changed files with 152 additions and 162 deletions

View File

@ -184,8 +184,7 @@ auto encrypt_provider::do_fs_operation(
}
}
source_path =
utils::path::absolute(utils::path::combine(cfg.path, {source_path}));
source_path = utils::path::combine(cfg.path, {source_path});
if (source_path != cfg.path &&
not source_path.starts_with(cfg.path +
utils::path::directory_seperator)) {

View File

@ -103,11 +103,11 @@ auto main(int argc, char **argv) -> int {
std::cerr << "Name of S3 instance not provided" << std::endl;
res = exit_code::invalid_syntax;
} else {
data_directory = utils::path::absolute(
data_directory =
data_directory.empty()
? utils::path::combine(app_config::default_data_directory(prov),
{unique_id})
: data_directory);
: utils::path::absolute(data_directory);
}
}
}

View File

@ -25,10 +25,13 @@
#include "mocks/mock_provider.hpp"
#include "mocks/mock_upload_manager.hpp"
#include "utils/file_utils.hpp"
#include "utils/path_utils.hpp"
#include "utils/unix/unix_utils.hpp"
namespace repertory {
static constexpr const std::size_t test_chunk_size = 1024u;
static std::string ring_buffer_dir = utils::path::combine(
get_test_dir(), {"file_manager_ring_buffer_open_file_test"});
TEST(ring_buffer_open_file, can_forward_to_last_chunk) {
const auto source_path =
@ -45,8 +48,8 @@ TEST(ring_buffer_open_file, can_forward_to_last_chunk) {
fsi.source_path = source_path;
{
file_manager::ring_buffer_open_file rb("./ring_buffer_directory",
test_chunk_size, 30U, fsi, mp, 8u);
file_manager::ring_buffer_open_file rb(ring_buffer_dir, test_chunk_size,
30U, fsi, mp, 8u);
rb.set(0u, 3u);
rb.forward(4u);
@ -58,8 +61,7 @@ TEST(ring_buffer_open_file, can_forward_to_last_chunk) {
}
}
EXPECT_TRUE(
utils::file::delete_directory_recursively("./ring_buffer_directory"));
EXPECT_TRUE(utils::file::delete_directory_recursively(ring_buffer_dir));
}
TEST(ring_buffer_open_file,
@ -78,8 +80,8 @@ TEST(ring_buffer_open_file,
fsi.source_path = source_path;
{
file_manager::ring_buffer_open_file rb("./ring_buffer_directory",
test_chunk_size, 30U, fsi, mp, 8u);
file_manager::ring_buffer_open_file rb(ring_buffer_dir, test_chunk_size,
30U, fsi, mp, 8u);
rb.set(0u, 3u);
rb.forward(100u);
@ -91,8 +93,7 @@ TEST(ring_buffer_open_file,
}
}
EXPECT_TRUE(
utils::file::delete_directory_recursively("./ring_buffer_directory"));
EXPECT_TRUE(utils::file::delete_directory_recursively(ring_buffer_dir));
}
TEST(ring_buffer_open_file, can_forward_after_last_chunk) {
@ -110,8 +111,8 @@ TEST(ring_buffer_open_file, can_forward_after_last_chunk) {
fsi.source_path = source_path;
{
file_manager::ring_buffer_open_file rb("./ring_buffer_directory",
test_chunk_size, 30U, fsi, mp, 8u);
file_manager::ring_buffer_open_file rb(ring_buffer_dir, test_chunk_size,
30U, fsi, mp, 8u);
rb.set(0u, 3u);
rb.forward(5u);
@ -124,8 +125,7 @@ TEST(ring_buffer_open_file, can_forward_after_last_chunk) {
}
}
EXPECT_TRUE(
utils::file::delete_directory_recursively("./ring_buffer_directory"));
EXPECT_TRUE(utils::file::delete_directory_recursively(ring_buffer_dir));
}
TEST(ring_buffer_open_file, can_forward_and_rollover_after_last_chunk) {
@ -143,8 +143,8 @@ TEST(ring_buffer_open_file, can_forward_and_rollover_after_last_chunk) {
fsi.source_path = source_path;
{
file_manager::ring_buffer_open_file rb("./ring_buffer_directory",
test_chunk_size, 30U, fsi, mp, 8u);
file_manager::ring_buffer_open_file rb(ring_buffer_dir, test_chunk_size,
30U, fsi, mp, 8u);
rb.set(16u, 20u);
rb.forward(8u);
@ -153,8 +153,7 @@ TEST(ring_buffer_open_file, can_forward_and_rollover_after_last_chunk) {
EXPECT_EQ(std::size_t(28u), rb.get_last_chunk());
}
EXPECT_TRUE(
utils::file::delete_directory_recursively("./ring_buffer_directory"));
EXPECT_TRUE(utils::file::delete_directory_recursively(ring_buffer_dir));
}
TEST(ring_buffer_open_file, can_reverse_to_first_chunk) {
@ -172,8 +171,8 @@ TEST(ring_buffer_open_file, can_reverse_to_first_chunk) {
fsi.source_path = source_path;
{
file_manager::ring_buffer_open_file rb("./ring_buffer_directory",
test_chunk_size, 30U, fsi, mp, 8u);
file_manager::ring_buffer_open_file rb(ring_buffer_dir, test_chunk_size,
30U, fsi, mp, 8u);
rb.set(0u, 3u);
rb.reverse(3u);
@ -185,8 +184,7 @@ TEST(ring_buffer_open_file, can_reverse_to_first_chunk) {
}
}
EXPECT_TRUE(
utils::file::delete_directory_recursively("./ring_buffer_directory"));
EXPECT_TRUE(utils::file::delete_directory_recursively(ring_buffer_dir));
}
TEST(ring_buffer_open_file,
@ -205,8 +203,8 @@ TEST(ring_buffer_open_file,
fsi.source_path = source_path;
{
file_manager::ring_buffer_open_file rb("./ring_buffer_directory",
test_chunk_size, 30U, fsi, mp, 8u);
file_manager::ring_buffer_open_file rb(ring_buffer_dir, test_chunk_size,
30U, fsi, mp, 8u);
rb.set(0u, 3u);
rb.reverse(13u);
@ -218,8 +216,7 @@ TEST(ring_buffer_open_file,
}
}
EXPECT_TRUE(
utils::file::delete_directory_recursively("./ring_buffer_directory"));
EXPECT_TRUE(utils::file::delete_directory_recursively(ring_buffer_dir));
}
TEST(ring_buffer_open_file, can_reverse_before_first_chunk) {
@ -237,8 +234,8 @@ TEST(ring_buffer_open_file, can_reverse_before_first_chunk) {
fsi.source_path = source_path;
{
file_manager::ring_buffer_open_file rb("./ring_buffer_directory",
test_chunk_size, 30U, fsi, mp, 8u);
file_manager::ring_buffer_open_file rb(ring_buffer_dir, test_chunk_size,
30U, fsi, mp, 8u);
rb.set(1u, 3u);
rb.reverse(3u);
@ -251,8 +248,7 @@ TEST(ring_buffer_open_file, can_reverse_before_first_chunk) {
}
}
EXPECT_TRUE(
utils::file::delete_directory_recursively("./ring_buffer_directory"));
EXPECT_TRUE(utils::file::delete_directory_recursively(ring_buffer_dir));
}
TEST(ring_buffer_open_file, can_reverse_and_rollover_before_first_chunk) {
@ -270,8 +266,8 @@ TEST(ring_buffer_open_file, can_reverse_and_rollover_before_first_chunk) {
fsi.source_path = source_path;
{
file_manager::ring_buffer_open_file rb("./ring_buffer_directory",
test_chunk_size, 30U, fsi, mp, 8u);
file_manager::ring_buffer_open_file rb(ring_buffer_dir, test_chunk_size,
30U, fsi, mp, 8u);
rb.set(16u, 20u);
rb.reverse(8u);
@ -288,8 +284,7 @@ TEST(ring_buffer_open_file, can_reverse_and_rollover_before_first_chunk) {
}
}
EXPECT_TRUE(
utils::file::delete_directory_recursively("./ring_buffer_directory"));
EXPECT_TRUE(utils::file::delete_directory_recursively(ring_buffer_dir));
}
TEST(ring_buffer_open_file, can_reverse_full_ring) {
@ -307,8 +302,8 @@ TEST(ring_buffer_open_file, can_reverse_full_ring) {
fsi.source_path = source_path;
{
file_manager::ring_buffer_open_file rb("./ring_buffer_directory",
test_chunk_size, 30U, fsi, mp, 8u);
file_manager::ring_buffer_open_file rb(ring_buffer_dir, test_chunk_size,
30U, fsi, mp, 8u);
rb.set(8u, 15u);
rb.reverse(16u);
@ -321,8 +316,7 @@ TEST(ring_buffer_open_file, can_reverse_full_ring) {
}
}
EXPECT_TRUE(
utils::file::delete_directory_recursively("./ring_buffer_directory"));
EXPECT_TRUE(utils::file::delete_directory_recursively(ring_buffer_dir));
}
TEST(ring_buffer_open_file, read_full_file) {
@ -359,8 +353,8 @@ TEST(ring_buffer_open_file, read_full_file) {
return ret;
});
{
file_manager::ring_buffer_open_file rb("./ring_buffer_directory",
test_chunk_size, 30U, fsi, mp, 8u);
file_manager::ring_buffer_open_file rb(ring_buffer_dir, test_chunk_size,
30U, fsi, mp, 8u);
native_file_ptr nf2;
EXPECT_EQ(api_error::success, native_file::create_or_open(dest_path, nf2));
@ -385,8 +379,7 @@ TEST(ring_buffer_open_file, read_full_file) {
utils::file::generate_sha256(dest_path).c_str());
}
EXPECT_TRUE(
utils::file::delete_directory_recursively("./ring_buffer_directory"));
EXPECT_TRUE(utils::file::delete_directory_recursively(ring_buffer_dir));
}
TEST(ring_buffer_open_file, read_full_file_in_reverse) {
@ -423,8 +416,8 @@ TEST(ring_buffer_open_file, read_full_file_in_reverse) {
return ret;
});
{
file_manager::ring_buffer_open_file rb("./ring_buffer_directory",
test_chunk_size, 30U, fsi, mp, 8u);
file_manager::ring_buffer_open_file rb(ring_buffer_dir, test_chunk_size,
30U, fsi, mp, 8u);
native_file_ptr nf2;
EXPECT_EQ(api_error::success, native_file::create_or_open(dest_path, nf2));
@ -449,8 +442,7 @@ TEST(ring_buffer_open_file, read_full_file_in_reverse) {
utils::file::generate_sha256(dest_path).c_str());
}
EXPECT_TRUE(
utils::file::delete_directory_recursively("./ring_buffer_directory"));
EXPECT_TRUE(utils::file::delete_directory_recursively(ring_buffer_dir));
}
TEST(ring_buffer_open_file, read_full_file_in_partial_chunks) {
@ -487,8 +479,8 @@ TEST(ring_buffer_open_file, read_full_file_in_partial_chunks) {
return ret;
});
{
file_manager::ring_buffer_open_file rb("./ring_buffer_directory",
test_chunk_size, 30U, fsi, mp, 8u);
file_manager::ring_buffer_open_file rb(ring_buffer_dir, test_chunk_size,
30U, fsi, mp, 8u);
native_file_ptr nf2;
EXPECT_EQ(api_error::success, native_file::create_or_open(dest_path, nf2));
@ -511,8 +503,7 @@ TEST(ring_buffer_open_file, read_full_file_in_partial_chunks) {
utils::file::generate_sha256(dest_path).c_str());
}
EXPECT_TRUE(
utils::file::delete_directory_recursively("./ring_buffer_directory"));
EXPECT_TRUE(utils::file::delete_directory_recursively(ring_buffer_dir));
}
TEST(ring_buffer_open_file, read_full_file_in_partial_chunks_in_reverse) {
@ -549,8 +540,8 @@ TEST(ring_buffer_open_file, read_full_file_in_partial_chunks_in_reverse) {
return ret;
});
{
file_manager::ring_buffer_open_file rb("./ring_buffer_directory",
test_chunk_size, 30U, fsi, mp, 8u);
file_manager::ring_buffer_open_file rb(ring_buffer_dir, test_chunk_size,
30U, fsi, mp, 8u);
native_file_ptr nf2;
EXPECT_EQ(api_error::success, native_file::create_or_open(dest_path, nf2));
@ -581,7 +572,6 @@ TEST(ring_buffer_open_file, read_full_file_in_partial_chunks_in_reverse) {
utils::file::generate_sha256(dest_path).c_str());
}
EXPECT_TRUE(
utils::file::delete_directory_recursively("./ring_buffer_directory"));
EXPECT_TRUE(utils::file::delete_directory_recursively(ring_buffer_dir));
}
} // namespace repertory

View File

@ -39,6 +39,9 @@
#include "utils/utils.hpp"
namespace repertory {
static std::string file_manager_dir =
utils::path::combine(get_test_dir(), {"file_manager_test"});
#if defined(PROJECT_ENABLE_TESTING)
auto file_manager::open(std::shared_ptr<i_closeable_open_file> of,
const open_file_data &ofd, std::uint64_t &handle,
@ -52,7 +55,7 @@ TEST(file_manager, can_start_and_stop) {
console_consumer c;
event_system::instance().start();
app_config cfg(provider_type::sia, "./fm_test");
app_config cfg(provider_type::sia, file_manager_dir);
mock_provider mp;
EXPECT_CALL(mp, is_direct_only()).WillRepeatedly(Return(false));
@ -81,7 +84,7 @@ TEST(file_manager, can_start_and_stop) {
}
event_system::instance().stop();
// EXPECT_TRUE(utils::file::delete_directory_recursively("./fm_test"));
// EXPECT_TRUE(utils::file::delete_directory_recursively(file_manager_dir));
}
TEST(file_manager, can_create_and_close_file) {
@ -89,7 +92,7 @@ TEST(file_manager, can_create_and_close_file) {
console_consumer c;
event_system::instance().start();
app_config cfg(provider_type::sia, "./fm_test");
app_config cfg(provider_type::sia, file_manager_dir);
cfg.set_enable_chunk_downloader_timeout(false);
mock_provider mp;
@ -198,7 +201,7 @@ TEST(file_manager, can_create_and_close_file) {
polling::instance().stop();
event_system::instance().stop();
EXPECT_TRUE(utils::file::delete_directory_recursively("./fm_test"));
EXPECT_TRUE(utils::file::delete_directory_recursively(file_manager_dir));
}
TEST(file_manager, can_open_and_close_file) {
@ -206,7 +209,7 @@ TEST(file_manager, can_open_and_close_file) {
console_consumer c;
event_system::instance().start();
app_config cfg(provider_type::sia, "./fm_test");
app_config cfg(provider_type::sia, file_manager_dir);
cfg.set_enable_chunk_downloader_timeout(false);
mock_provider mp;
@ -314,7 +317,7 @@ TEST(file_manager, can_open_and_close_file) {
polling::instance().stop();
event_system::instance().stop();
EXPECT_TRUE(utils::file::delete_directory_recursively("./fm_test"));
EXPECT_TRUE(utils::file::delete_directory_recursively(file_manager_dir));
}
TEST(file_manager, can_open_and_close_multiple_handles_for_same_file) {
@ -322,7 +325,7 @@ TEST(file_manager, can_open_and_close_multiple_handles_for_same_file) {
console_consumer c;
event_system::instance().start();
app_config cfg(provider_type::sia, "./fm_test");
app_config cfg(provider_type::sia, file_manager_dir);
cfg.set_enable_chunk_downloader_timeout(false);
mock_provider mp;
@ -387,7 +390,7 @@ TEST(file_manager, can_open_and_close_multiple_handles_for_same_file) {
polling::instance().stop();
event_system::instance().stop();
EXPECT_TRUE(utils::file::delete_directory_recursively("./fm_test"));
EXPECT_TRUE(utils::file::delete_directory_recursively(file_manager_dir));
}
TEST(file_manager, download_is_stored_after_write_if_partially_downloaded) {
@ -395,7 +398,7 @@ TEST(file_manager, download_is_stored_after_write_if_partially_downloaded) {
console_consumer c;
event_system::instance().start();
app_config cfg(provider_type::sia, "./fm_test");
app_config cfg(provider_type::sia, file_manager_dir);
mock_provider mp;
EXPECT_CALL(mp, is_direct_only()).WillRepeatedly(Return(false));
@ -542,7 +545,7 @@ TEST(file_manager, download_is_stored_after_write_if_partially_downloaded) {
}
event_system::instance().stop();
EXPECT_TRUE(utils::file::delete_directory_recursively("./fm_test"));
EXPECT_TRUE(utils::file::delete_directory_recursively(file_manager_dir));
}
TEST(file_manager, upload_occurs_after_write_if_fully_downloaded) {
@ -550,7 +553,7 @@ TEST(file_manager, upload_occurs_after_write_if_fully_downloaded) {
console_consumer c;
event_system::instance().start();
app_config cfg(provider_type::sia, "./fm_test");
app_config cfg(provider_type::sia, file_manager_dir);
cfg.set_enable_chunk_downloader_timeout(false);
mock_provider mp;
@ -661,16 +664,16 @@ TEST(file_manager, upload_occurs_after_write_if_fully_downloaded) {
polling::instance().stop();
event_system::instance().stop();
EXPECT_TRUE(utils::file::delete_directory_recursively("./fm_test"));
EXPECT_TRUE(utils::file::delete_directory_recursively(file_manager_dir));
}
TEST(file_manager, can_evict_file) {
EXPECT_TRUE(utils::file::delete_directory_recursively("./fm_test"));
EXPECT_TRUE(utils::file::delete_directory_recursively(file_manager_dir));
{
console_consumer c;
event_system::instance().start();
app_config cfg(provider_type::sia, "./fm_test");
app_config cfg(provider_type::sia, file_manager_dir);
cfg.set_enable_chunk_downloader_timeout(false);
mock_provider mp;
@ -766,13 +769,13 @@ TEST(file_manager, can_evict_file) {
}
event_system::instance().stop();
EXPECT_TRUE(utils::file::delete_directory_recursively("./fm_test"));
EXPECT_TRUE(utils::file::delete_directory_recursively(file_manager_dir));
}
TEST(file_manager, evict_file_fails_if_file_is_pinned) {
EXPECT_TRUE(utils::file::delete_directory_recursively("./fm_test"));
EXPECT_TRUE(utils::file::delete_directory_recursively(file_manager_dir));
{
app_config cfg(provider_type::sia, "./fm_test");
app_config cfg(provider_type::sia, file_manager_dir);
cfg.set_enable_chunk_downloader_timeout(false);
mock_provider mp;
@ -792,14 +795,14 @@ TEST(file_manager, evict_file_fails_if_file_is_pinned) {
}
event_system::instance().stop();
EXPECT_TRUE(utils::file::delete_directory_recursively("./fm_test"));
EXPECT_TRUE(utils::file::delete_directory_recursively(file_manager_dir));
}
TEST(file_manager, evict_file_fails_if_provider_is_direct_only) {
EXPECT_TRUE(utils::file::delete_directory_recursively("./fm_test"));
EXPECT_TRUE(utils::file::delete_directory_recursively(file_manager_dir));
{
app_config cfg(provider_type::sia, "./fm_test");
app_config cfg(provider_type::sia, file_manager_dir);
cfg.set_enable_chunk_downloader_timeout(false);
mock_provider mp;
@ -808,14 +811,14 @@ TEST(file_manager, evict_file_fails_if_provider_is_direct_only) {
EXPECT_FALSE(fm.evict_file("/test.txt"));
}
EXPECT_TRUE(utils::file::delete_directory_recursively("./fm_test"));
EXPECT_TRUE(utils::file::delete_directory_recursively(file_manager_dir));
}
TEST(file_manager, evict_file_fails_if_file_is_open) {
EXPECT_TRUE(utils::file::delete_directory_recursively("./fm_test"));
EXPECT_TRUE(utils::file::delete_directory_recursively(file_manager_dir));
{
app_config cfg(provider_type::sia, "./fm_test");
app_config cfg(provider_type::sia, file_manager_dir);
cfg.set_enable_chunk_downloader_timeout(false);
mock_provider mp;
@ -858,15 +861,15 @@ TEST(file_manager, evict_file_fails_if_file_is_open) {
fm.close(handle);
}
EXPECT_TRUE(utils::file::delete_directory_recursively("./fm_test"));
EXPECT_TRUE(utils::file::delete_directory_recursively(file_manager_dir));
}
TEST(file_manager,
evict_file_fails_if_unable_to_get_source_path_from_item_meta) {
EXPECT_TRUE(utils::file::delete_directory_recursively("./fm_test"));
EXPECT_TRUE(utils::file::delete_directory_recursively(file_manager_dir));
{
app_config cfg(provider_type::sia, "./fm_test");
app_config cfg(provider_type::sia, file_manager_dir);
cfg.set_enable_chunk_downloader_timeout(false);
mock_provider mp;
@ -893,14 +896,14 @@ TEST(file_manager,
EXPECT_FALSE(fm.evict_file("/test_open.txt"));
}
EXPECT_TRUE(utils::file::delete_directory_recursively("./fm_test"));
EXPECT_TRUE(utils::file::delete_directory_recursively(file_manager_dir));
}
TEST(file_manager, evict_file_fails_if_source_path_is_empty) {
EXPECT_TRUE(utils::file::delete_directory_recursively("./fm_test"));
EXPECT_TRUE(utils::file::delete_directory_recursively(file_manager_dir));
{
app_config cfg(provider_type::sia, "./fm_test");
app_config cfg(provider_type::sia, file_manager_dir);
cfg.set_enable_chunk_downloader_timeout(false);
mock_provider mp;
@ -927,16 +930,16 @@ TEST(file_manager, evict_file_fails_if_source_path_is_empty) {
EXPECT_FALSE(fm.evict_file("/test_open.txt"));
}
EXPECT_TRUE(utils::file::delete_directory_recursively("./fm_test"));
EXPECT_TRUE(utils::file::delete_directory_recursively(file_manager_dir));
}
TEST(file_manager, evict_file_fails_if_file_is_uploading) {
EXPECT_TRUE(utils::file::delete_directory_recursively("./fm_test"));
EXPECT_TRUE(utils::file::delete_directory_recursively(file_manager_dir));
{
console_consumer c;
event_system::instance().start();
app_config cfg(provider_type::sia, "./fm_test");
app_config cfg(provider_type::sia, file_manager_dir);
cfg.set_enable_chunk_downloader_timeout(false);
mock_provider mp;
@ -1022,14 +1025,14 @@ TEST(file_manager, evict_file_fails_if_file_is_uploading) {
}
event_system::instance().stop();
EXPECT_TRUE(utils::file::delete_directory_recursively("./fm_test"));
EXPECT_TRUE(utils::file::delete_directory_recursively(file_manager_dir));
}
TEST(file_manager, evict_file_fails_if_file_is_in_upload_queue) {
EXPECT_TRUE(utils::file::delete_directory_recursively("./fm_test"));
EXPECT_TRUE(utils::file::delete_directory_recursively(file_manager_dir));
{
app_config cfg(provider_type::sia, "./fm_test");
app_config cfg(provider_type::sia, file_manager_dir);
cfg.set_enable_chunk_downloader_timeout(false);
mock_provider mp;
@ -1047,14 +1050,14 @@ TEST(file_manager, evict_file_fails_if_file_is_in_upload_queue) {
EXPECT_FALSE(fm.evict_file("/test_evict.txt"));
}
EXPECT_TRUE(utils::file::delete_directory_recursively("./fm_test"));
EXPECT_TRUE(utils::file::delete_directory_recursively(file_manager_dir));
}
TEST(file_manager, evict_file_fails_if_file_is_modified) {
EXPECT_TRUE(utils::file::delete_directory_recursively("./fm_test"));
EXPECT_TRUE(utils::file::delete_directory_recursively(file_manager_dir));
{
app_config cfg(provider_type::sia, "./fm_test");
app_config cfg(provider_type::sia, file_manager_dir);
cfg.set_enable_chunk_downloader_timeout(false);
mock_provider mp;
@ -1093,14 +1096,14 @@ TEST(file_manager, evict_file_fails_if_file_is_modified) {
EXPECT_FALSE(fm.evict_file("/test_evict.txt"));
}
EXPECT_TRUE(utils::file::delete_directory_recursively("./fm_test"));
EXPECT_TRUE(utils::file::delete_directory_recursively(file_manager_dir));
}
TEST(file_manager, evict_file_fails_if_file_is_not_complete) {
EXPECT_TRUE(utils::file::delete_directory_recursively("./fm_test"));
EXPECT_TRUE(utils::file::delete_directory_recursively(file_manager_dir));
{
app_config cfg(provider_type::sia, "./fm_test");
app_config cfg(provider_type::sia, file_manager_dir);
cfg.set_enable_chunk_downloader_timeout(false);
mock_provider mp;
@ -1141,14 +1144,14 @@ TEST(file_manager, evict_file_fails_if_file_is_not_complete) {
EXPECT_FALSE(fm.evict_file("/test_evict.txt"));
}
EXPECT_TRUE(utils::file::delete_directory_recursively("./fm_test"));
EXPECT_TRUE(utils::file::delete_directory_recursively(file_manager_dir));
}
TEST(file_manager, can_get_directory_items) {
EXPECT_TRUE(utils::file::delete_directory_recursively("./fm_test"));
EXPECT_TRUE(utils::file::delete_directory_recursively(file_manager_dir));
{
app_config cfg(provider_type::sia, "./fm_test");
app_config cfg(provider_type::sia, file_manager_dir);
cfg.set_enable_chunk_downloader_timeout(false);
mock_provider mp;
@ -1175,14 +1178,14 @@ TEST(file_manager, can_get_directory_items) {
EXPECT_EQ(std::size_t(2U), list.size());
}
EXPECT_TRUE(utils::file::delete_directory_recursively("./fm_test"));
EXPECT_TRUE(utils::file::delete_directory_recursively(file_manager_dir));
}
TEST(file_manager, file_is_not_opened_if_provider_create_file_fails) {
EXPECT_TRUE(utils::file::delete_directory_recursively("./fm_test"));
EXPECT_TRUE(utils::file::delete_directory_recursively(file_manager_dir));
{
app_config cfg(provider_type::sia, "./fm_test");
app_config cfg(provider_type::sia, file_manager_dir);
cfg.set_enable_chunk_downloader_timeout(false);
mock_provider mp;
@ -1211,14 +1214,14 @@ TEST(file_manager, file_is_not_opened_if_provider_create_file_fails) {
EXPECT_EQ(std::size_t(0U), fm.get_open_file_count());
}
EXPECT_TRUE(utils::file::delete_directory_recursively("./fm_test"));
EXPECT_TRUE(utils::file::delete_directory_recursively(file_manager_dir));
}
TEST(file_manager, create_fails_if_provider_create_is_unsuccessful) {
EXPECT_TRUE(utils::file::delete_directory_recursively("./fm_test"));
EXPECT_TRUE(utils::file::delete_directory_recursively(file_manager_dir));
{
app_config cfg(provider_type::sia, "./fm_test");
app_config cfg(provider_type::sia, file_manager_dir);
cfg.set_enable_chunk_downloader_timeout(false);
mock_provider mp;
@ -1242,15 +1245,15 @@ TEST(file_manager, create_fails_if_provider_create_is_unsuccessful) {
EXPECT_EQ(std::size_t(0U), fm.get_open_file_count());
}
EXPECT_TRUE(utils::file::delete_directory_recursively("./fm_test"));
EXPECT_TRUE(utils::file::delete_directory_recursively(file_manager_dir));
}
TEST(file_manager, get_open_file_fails_if_file_is_not_open) {
EXPECT_TRUE(utils::file::delete_directory_recursively("./fm_test"));
EXPECT_TRUE(utils::file::delete_directory_recursively(file_manager_dir));
{
app_config cfg(provider_type::sia, "./fm_test");
app_config cfg(provider_type::sia, file_manager_dir);
cfg.set_enable_chunk_downloader_timeout(false);
mock_provider mp;
@ -1266,15 +1269,15 @@ TEST(file_manager, get_open_file_fails_if_file_is_not_open) {
EXPECT_FALSE(f);
}
EXPECT_TRUE(utils::file::delete_directory_recursively("./fm_test"));
EXPECT_TRUE(utils::file::delete_directory_recursively(file_manager_dir));
}
TEST(file_manager,
get_open_file_promotes_non_writeable_file_if_writeable_is_specified) {
EXPECT_TRUE(utils::file::delete_directory_recursively("./fm_test"));
EXPECT_TRUE(utils::file::delete_directory_recursively(file_manager_dir));
{
app_config cfg(provider_type::sia, "./fm_test");
app_config cfg(provider_type::sia, file_manager_dir);
cfg.set_enable_chunk_downloader_timeout(false);
mock_provider mp;
@ -1351,14 +1354,14 @@ TEST(file_manager,
EXPECT_EQ(std::size_t(1U), fm.get_open_file_count());
}
EXPECT_TRUE(utils::file::delete_directory_recursively("./fm_test"));
EXPECT_TRUE(utils::file::delete_directory_recursively(file_manager_dir));
}
TEST(file_manager, open_file_fails_if_file_is_not_found) {
EXPECT_TRUE(utils::file::delete_directory_recursively("./fm_test"));
EXPECT_TRUE(utils::file::delete_directory_recursively(file_manager_dir));
{
app_config cfg(provider_type::sia, "./fm_test");
app_config cfg(provider_type::sia, file_manager_dir);
cfg.set_enable_chunk_downloader_timeout(false);
mock_provider mp;
@ -1376,14 +1379,14 @@ TEST(file_manager, open_file_fails_if_file_is_not_found) {
EXPECT_EQ(std::size_t(0U), fm.get_open_file_count());
}
EXPECT_TRUE(utils::file::delete_directory_recursively("./fm_test"));
EXPECT_TRUE(utils::file::delete_directory_recursively(file_manager_dir));
}
TEST(file_manager, open_file_fails_if_provider_get_filesystem_item_fails) {
EXPECT_TRUE(utils::file::delete_directory_recursively("./fm_test"));
EXPECT_TRUE(utils::file::delete_directory_recursively(file_manager_dir));
{
app_config cfg(provider_type::sia, "./fm_test");
app_config cfg(provider_type::sia, file_manager_dir);
cfg.set_enable_chunk_downloader_timeout(false);
mock_provider mp;
@ -1420,14 +1423,14 @@ TEST(file_manager, open_file_fails_if_provider_get_filesystem_item_fails) {
EXPECT_EQ(std::size_t(0U), fm.get_open_file_count());
}
EXPECT_TRUE(utils::file::delete_directory_recursively("./fm_test"));
EXPECT_TRUE(utils::file::delete_directory_recursively(file_manager_dir));
}
TEST(file_manager, open_file_fails_if_provider_set_item_meta_fails) {
EXPECT_TRUE(utils::file::delete_directory_recursively("./fm_test"));
EXPECT_TRUE(utils::file::delete_directory_recursively(file_manager_dir));
{
app_config cfg(provider_type::sia, "./fm_test");
app_config cfg(provider_type::sia, file_manager_dir);
cfg.set_enable_chunk_downloader_timeout(false);
mock_provider mp;
@ -1471,14 +1474,14 @@ TEST(file_manager, open_file_fails_if_provider_set_item_meta_fails) {
EXPECT_EQ(std::size_t(0U), fm.get_open_file_count());
}
EXPECT_TRUE(utils::file::delete_directory_recursively("./fm_test"));
EXPECT_TRUE(utils::file::delete_directory_recursively(file_manager_dir));
}
TEST(file_manager, open_file_creates_source_path_if_empty) {
EXPECT_TRUE(utils::file::delete_directory_recursively("./fm_test"));
EXPECT_TRUE(utils::file::delete_directory_recursively(file_manager_dir));
{
app_config cfg(provider_type::sia, "./fm_test");
app_config cfg(provider_type::sia, file_manager_dir);
cfg.set_enable_chunk_downloader_timeout(false);
mock_provider mp;
@ -1534,14 +1537,14 @@ TEST(file_manager, open_file_creates_source_path_if_empty) {
EXPECT_EQ(std::size_t(1U), fm.get_open_file_count());
}
EXPECT_TRUE(utils::file::delete_directory_recursively("./fm_test"));
EXPECT_TRUE(utils::file::delete_directory_recursively(file_manager_dir));
}
TEST(file_manager, open_file_first_file_handle_is_not_zero) {
EXPECT_TRUE(utils::file::delete_directory_recursively("./fm_test"));
EXPECT_TRUE(utils::file::delete_directory_recursively(file_manager_dir));
{
app_config cfg(provider_type::sia, "./fm_test");
app_config cfg(provider_type::sia, file_manager_dir);
cfg.set_enable_chunk_downloader_timeout(false);
mock_provider mp;
@ -1582,14 +1585,14 @@ TEST(file_manager, open_file_first_file_handle_is_not_zero) {
EXPECT_GT(handle, std::uint64_t(0U));
}
EXPECT_TRUE(utils::file::delete_directory_recursively("./fm_test"));
EXPECT_TRUE(utils::file::delete_directory_recursively(file_manager_dir));
}
TEST(file_manager, can_remove_file) {
EXPECT_TRUE(utils::file::delete_directory_recursively("./fm_test"));
EXPECT_TRUE(utils::file::delete_directory_recursively(file_manager_dir));
{
app_config cfg(provider_type::sia, "./fm_test");
app_config cfg(provider_type::sia, file_manager_dir);
cfg.set_enable_chunk_downloader_timeout(false);
mock_provider mp;
@ -1623,11 +1626,11 @@ TEST(file_manager, can_remove_file) {
EXPECT_FALSE(utils::file::is_file("./test_remove.txt"));
}
EXPECT_TRUE(utils::file::delete_directory_recursively("./fm_test"));
EXPECT_TRUE(utils::file::delete_directory_recursively(file_manager_dir));
}
TEST(file_manager, can_queue_and_remove_upload) {
EXPECT_TRUE(utils::file::delete_directory_recursively("./fm_test"));
EXPECT_TRUE(utils::file::delete_directory_recursively(file_manager_dir));
console_consumer c;
event_system::instance().start();
@ -1635,7 +1638,7 @@ TEST(file_manager, can_queue_and_remove_upload) {
{
event_capture ec({"file_upload_queued", "download_stored_removed"});
app_config cfg(provider_type::sia, "./fm_test");
app_config cfg(provider_type::sia, file_manager_dir);
cfg.set_enable_chunk_downloader_timeout(false);
mock_provider mp;
@ -1658,14 +1661,14 @@ TEST(file_manager, can_queue_and_remove_upload) {
}
event_system::instance().stop();
EXPECT_TRUE(utils::file::delete_directory_recursively("./fm_test"));
EXPECT_TRUE(utils::file::delete_directory_recursively(file_manager_dir));
}
TEST(file_manager, remove_file_fails_if_open_file_is_modified) {
EXPECT_TRUE(utils::file::delete_directory_recursively("./fm_test"));
EXPECT_TRUE(utils::file::delete_directory_recursively(file_manager_dir));
{
app_config cfg(provider_type::sia, "./fm_test");
app_config cfg(provider_type::sia, file_manager_dir);
cfg.set_enable_chunk_downloader_timeout(false);
mock_provider mp;
@ -1712,7 +1715,7 @@ TEST(file_manager, remove_file_fails_if_open_file_is_modified) {
EXPECT_EQ(api_error::file_in_use, fm.remove_file("/test_remove.txt"));
}
EXPECT_TRUE(utils::file::delete_directory_recursively("./fm_test"));
EXPECT_TRUE(utils::file::delete_directory_recursively(file_manager_dir));
}
TEST(file_manager, file_is_closed_after_download_timeout) {
@ -1720,7 +1723,7 @@ TEST(file_manager, file_is_closed_after_download_timeout) {
console_consumer c;
event_system::instance().start();
app_config cfg(provider_type::sia, "./fm_test");
app_config cfg(provider_type::sia, file_manager_dir);
cfg.set_chunk_downloader_timeout_secs(3U);
polling::instance().start(&cfg);
@ -1810,13 +1813,13 @@ TEST(file_manager, file_is_closed_after_download_timeout) {
}
event_system::instance().stop();
EXPECT_TRUE(utils::file::delete_directory_recursively("./fm_test"));
EXPECT_TRUE(utils::file::delete_directory_recursively(file_manager_dir));
}
TEST(file_manager, remove_file_fails_if_file_does_not_exist) {
EXPECT_TRUE(utils::file::delete_directory_recursively("./fm_test"));
EXPECT_TRUE(utils::file::delete_directory_recursively(file_manager_dir));
{
app_config cfg(provider_type::sia, "./fm_test");
app_config cfg(provider_type::sia, file_manager_dir);
cfg.set_enable_chunk_downloader_timeout(false);
mock_provider mp;
@ -1835,14 +1838,14 @@ TEST(file_manager, remove_file_fails_if_file_does_not_exist) {
EXPECT_EQ(api_error::item_not_found, fm.remove_file("/test_remove.txt"));
}
EXPECT_TRUE(utils::file::delete_directory_recursively("./fm_test"));
EXPECT_TRUE(utils::file::delete_directory_recursively(file_manager_dir));
}
TEST(file_manager, remove_file_fails_if_provider_remove_file_fails) {
EXPECT_TRUE(utils::file::delete_directory_recursively("./fm_test"));
EXPECT_TRUE(utils::file::delete_directory_recursively(file_manager_dir));
{
app_config cfg(provider_type::sia, "./fm_test");
app_config cfg(provider_type::sia, file_manager_dir);
cfg.set_enable_chunk_downloader_timeout(false);
mock_provider mp;
@ -1867,6 +1870,6 @@ TEST(file_manager, remove_file_fails_if_provider_remove_file_fails) {
EXPECT_EQ(api_error::item_not_found, fm.remove_file("/test_remove.txt"));
}
EXPECT_TRUE(utils::file::delete_directory_recursively("./fm_test"));
EXPECT_TRUE(utils::file::delete_directory_recursively(file_manager_dir));
}
} // namespace repertory

View File

@ -81,7 +81,6 @@ TEST(upload, can_cancel_upload) {
const auto source_path =
generate_test_file_name(get_test_dir(), "upload_test");
// create_random_file(source_path, test_chunk_size * 4u)->close();
mock_provider mp;

View File

@ -80,8 +80,7 @@ static void execute_unmount(const std::string &mount_location) {
static auto create_file_and_test(const std::string &mount_location,
std::string name) -> std::string {
std::cout << __FUNCTION__ << std::endl;
auto file_path =
utils::path::absolute(utils::path::combine(mount_location, {name}));
auto file_path = utils::path::combine(mount_location, {name});
auto fd =
open(file_path.c_str(), O_CREAT | O_RDWR, S_IRUSR | S_IWUSR | S_IRGRP);
@ -515,12 +514,12 @@ TEST(fuse_drive, all_tests) {
for (std::size_t idx = 0U; idx < 2U; idx++) {
std::filesystem::current_path(current_directory);
const auto test_directory =
utils::path::absolute("./fuse_drive" + std::to_string(idx));
const auto test_directory = utils::path::combine(
get_test_dir(), {"fuse_drive" + std::to_string(idx)});
EXPECT_TRUE(utils::file::delete_directory_recursively(test_directory));
const auto mount_location = utils::path::absolute(
utils::path::combine(test_directory, {"mount", std::to_string(idx)}));
const auto mount_location =
utils::path::combine(test_directory, {"mount", std::to_string(idx}));
EXPECT_TRUE(utils::file::create_full_directory_path(mount_location));
{
@ -528,8 +527,8 @@ TEST(fuse_drive, all_tests) {
std::unique_ptr<curl_comm> comm_ptr{};
std::unique_ptr<i_provider> provider_ptr{};
const auto cfg_directory = utils::path::absolute(
utils::path::combine(test_directory, {"cfg", std::to_string(idx)}));
const auto cfg_directory =
utils::path::combine(test_directory, {"cfg", std::to_string(idx)});
EXPECT_TRUE(utils::file::create_full_directory_path(cfg_directory));
std::vector<std::string> drive_args{};
@ -599,17 +598,17 @@ TEST(fuse_drive, all_tests) {
file_path =
create_file_and_test(mount_location, "from_rename_file_test");
auto to_file_path = utils::path::absolute(
utils::path::combine(mount_location, {"to_rename_file_test"}));
auto to_file_path =
utils::path::combine(mount_location, {"to_rename_file_test"});
test_rename_file(file_path, to_file_path,
provider_ptr->is_rename_supported());
EXPECT_TRUE(utils::file::retry_delete_file(file_path));
EXPECT_TRUE(utils::file::retry_delete_file(to_file_path));
file_path = utils::path::absolute(
utils::path::combine(mount_location, {"from_rename_dir_test"}));
to_file_path = utils::path::absolute(
utils::path::combine(mount_location, {"to_rename_dir_test"}));
file_path =
utils::path::combine(mount_location, {"from_rename_dir_test"});
to_file_path =
utils::path::combine(mount_location, {"to_rename_dir_test"});
test_rename_directory(file_path, to_file_path,
provider_ptr->is_rename_supported());
EXPECT_TRUE(utils::file::retry_delete_directory(file_path.c_str()));

View File

@ -60,8 +60,8 @@ auto generate_test_file_name(const std::string &directory,
const std::string &file_name_no_extension)
-> std::string {
static std::atomic<std::uint32_t> idx{0U};
auto path = utils::path::absolute(utils::path::combine(
directory, {file_name_no_extension + std::to_string(idx++) + ".dat"}));
auto path = utils::path::combine(
directory, {file_name_no_extension + std::to_string(idx++) + ".dat"});
generated_files.emplace_back(path);
return path;
}