diff --git a/tests/AppDirUnitTests.cpp b/tests/AppDirUnitTests.cpp index 3b5d774..dd93ce2 100644 --- a/tests/AppDirUnitTests.cpp +++ b/tests/AppDirUnitTests.cpp @@ -149,6 +149,24 @@ namespace AppDirUnitTests { if (!simple_icon_found) FAIL(); + } + + TEST_F(AppDirUnitTestsFixture, deployFile) { + path filePath = SIMPLE_FILE_PATH; + appDir.deployFile(filePath, tmpAppDir / "usr/share/doc/simple_application/"); + appDir.executeDeferredOperations(); + + bool simple_file_found = false; + recursive_directory_iterator end_itr; // default construction yields past-the-end + for (recursive_directory_iterator itr(tmpAppDir); itr != end_itr && (!simple_file_found); itr++) { + const auto path = relative(itr->path(), tmpAppDir).filename().string(); + + if (path.find("simple_file.txt") != std::string::npos) + simple_file_found = true; + } + + if (!simple_file_found) + FAIL(); } } diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt index 00e493e..2731f3b 100644 --- a/tests/CMakeLists.txt +++ b/tests/CMakeLists.txt @@ -14,6 +14,7 @@ target_compile_definitions(AppDirUnitTests PRIVATE -DSIMPLE_EXECUTABLE_PATH="$" -DSIMPLE_DESKTOP_ENTRY_PATH="${CMAKE_CURRENT_SOURCE_DIR}/data/simple_app.Desktop" -DSIMPLE_ICON_PATH="${CMAKE_CURRENT_SOURCE_DIR}/data/simple_icon.svg" + -DSIMPLE_FILE_PATH="${CMAKE_CURRENT_SOURCE_DIR}/data/simple_file.txt" ) add_gtest(AppDirUnitTests) diff --git a/tests/data/simple_file.txt b/tests/data/simple_file.txt new file mode 100644 index 0000000..980a0d5 --- /dev/null +++ b/tests/data/simple_file.txt @@ -0,0 +1 @@ +Hello World!