Skip to content

Commit

Permalink
Use CPM.cmake downloading tests data
Browse files Browse the repository at this point in the history
  • Loading branch information
rikyoz committed Dec 13, 2023
1 parent 2266d2a commit 16a9c30
Show file tree
Hide file tree
Showing 3 changed files with 34 additions and 35 deletions.
1 change: 1 addition & 0 deletions cmake/Dependencies.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@
set( CPM_DOWNLOAD_VERSION 0.38.7 )
set( CPM_DOWNLOAD_HASH 83e5eb71b2bbb8b1f2ad38f1950287a057624e385c238f6087f94cdfc44af9c5 )
set( CPM_DOWNLOAD_LOCATION "${CMAKE_BINARY_DIR}/cmake/CPM_${CPM_DOWNLOAD_VERSION}.cmake" )
set( CPM_USE_NAMED_CACHE_DIRECTORIES ON )
if( NOT ( EXISTS ${CPM_DOWNLOAD_LOCATION} ) )
message( STATUS "Downloading CPM.cmake to ${CPM_DOWNLOAD_LOCATION}" )
file( DOWNLOAD
Expand Down
18 changes: 8 additions & 10 deletions tests/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -51,17 +51,15 @@ set( TESTS_TARGET_PUBLIC bit7z-tests-public )
add_executable( ${TESTS_TARGET_PUBLIC} ${SOURCE_FILES} ${PUBLIC_API_SOURCE_FILES} )

if( BIT7Z_TESTS_FILESYSTEM )
set( BIT7Z_TESTS_DATA_DIR ${CMAKE_CURRENT_BINARY_DIR}/data )

include( FetchContent )
FetchContent_Declare( bit7z-test-data
GIT_REPOSITORY https://github.com/rikyoz/bit7z-test-data.git
GIT_TAG abc1adc273dd8dd17f55969838811f98872d77b8
GIT_SHALLOW ON
SOURCE_DIR ${BIT7Z_TESTS_DATA_DIR} )
FetchContent_MakeAvailable( bit7z-test-data )
CPMAddPackage( NAME bit7z_test_data
GITHUB_REPOSITORY "rikyoz/bit7z-test-data"
VERSION 1.0
DOWNLOAD_ONLY YES )
if( bit7z_test_data_ADDED )
set( BIT7Z_TESTS_DATA_DIR ${bit7z_test_data_SOURCE_DIR} )
message( STATUS "Tests data directory: ${BIT7Z_TESTS_DATA_DIR}" )
endif()

message( STATUS "Tests data directory: ${BIT7Z_TESTS_DATA_DIR}" )
target_compile_definitions( ${TESTS_TARGET} PRIVATE
BIT7Z_TESTS_FILESYSTEM
BIT7Z_TESTS_DATA_DIR="${BIT7Z_TESTS_DATA_DIR}" )
Expand Down
50 changes: 25 additions & 25 deletions tests/src/test_fsutil.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -193,33 +193,33 @@ TEST_CASE( "fsutil: In-archive path computation", "[fsutil][in_archive_path]" )
// Note: since we are using the function fs::absolute(...), the content of this vector depends on the current
// directory, hence we must declare the vector inside the test case and not outside.
const std::array< TestItem, 28 > testItems{ {
{ ".", "" },
{ "./", "" },
{ "..", "" },
{ "../", "" },
{ "italy.svg", "italy.svg" },
{ "folder", "folder" },
{ "folder/", "folder/" },
{ "folder/clouds.jpg", "folder/clouds.jpg" },
{ "folder/subfolder2", "folder/subfolder2" },
{ "folder/subfolder2/", "folder/subfolder2/" },
{ ".", "" },
{ "./", "" },
{ "..", "" },
{ "../", "" },
{ "italy.svg", "italy.svg" },
{ "folder", "folder" },
{ "folder/", "folder/" },
{ "folder/clouds.jpg", "folder/clouds.jpg" },
{ "folder/subfolder2", "folder/subfolder2" },
{ "folder/subfolder2/", "folder/subfolder2/" },
{ "folder/subfolder2/homework.doc", "folder/subfolder2/homework.doc" },
{ "./italy.svg", "italy.svg" },
{ "./folder", "folder" },
{ "./folder/", "folder" },
{ "./folder/clouds.jpg", "clouds.jpg" },
{ "./folder/subfolder2", "subfolder2" },
{ "./italy.svg", "italy.svg" },
{ "./folder", "folder" },
{ "./folder/", "folder" },
{ "./folder/clouds.jpg", "clouds.jpg" },
{ "./folder/subfolder2", "subfolder2" },
{ "./folder/subfolder2/homework.doc", "homework.doc" },
{ "./../test_filesystem/", "test_filesystem" },
{ "./../test_filesystem/folder/", "folder" },
{ fs::absolute( "." ), "test_filesystem" },
{ fs::absolute( "../" ), "data" },
{ fs::absolute( "./italy.svg" ), "italy.svg" },
{ fs::absolute( "./folder" ), "folder" },
{ fs::absolute( "./folder/" ), "folder" },
{ fs::absolute( "./folder/clouds.jpg" ), "clouds.jpg" },
{ fs::absolute( "./folder/subfolder2" ), "subfolder2" },
{ fs::absolute( "./folder/subfolder2/" ), "subfolder2" },
{ "./../test_filesystem/", "test_filesystem" },
{ "./../test_filesystem/folder/", "folder" },
{ fs::absolute( "." ), "test_filesystem" },
{ fs::absolute( "../" ), "bit7z_test_data" },
{ fs::absolute( "./italy.svg" ), "italy.svg" },
{ fs::absolute( "./folder" ), "folder" },
{ fs::absolute( "./folder/" ), "folder" },
{ fs::absolute( "./folder/clouds.jpg" ), "clouds.jpg" },
{ fs::absolute( "./folder/subfolder2" ), "subfolder2" },
{ fs::absolute( "./folder/subfolder2/" ), "subfolder2" },
{ fs::absolute( "./folder/subfolder2/homework.doc" ), "homework.doc" }
} };

Expand Down

0 comments on commit 16a9c30

Please sign in to comment.