File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -130,3 +130,5 @@ endforeach ()
130130add_subdirectory (tests )
131131## Add functional tests
132132add_subdirectory (libv2-demo )
133+ ## Add packaging tests
134+ add_subdirectory (package )
Original file line number Diff line number Diff line change 1+ set_property (DIRECTORY APPEND
2+ PROPERTY LABELS package
3+ )
4+
5+ set (test_list
6+ FetchContent
7+ find_package
8+ )
9+ if (NOT Wannier90_IS_TOP_LEVEL)
10+ list (APPEND test_list pkg-config)
11+ endif ()
12+
13+ foreach (test IN LISTS test_list)
14+ Wannier90_add_test (${test} TEST_NAME test -${test} )
15+ endforeach ()
Original file line number Diff line number Diff line change 1+ cmake_minimum_required (VERSION 3.25...3.29 )
2+ project (example_Wannier90 LANGUAGES Fortran )
3+
4+
5+ include (FetchContent )
6+
7+ if (DEFINED ENV{PACKIT_SOURCE_URL})
8+ set (git_repo $ENV{PACKIT_SOURCE_URL} )
9+ else ()
10+ set (git_repo https://github.com/wannier-developers/wannier90)
11+ endif ()
12+ if (DEFINED ENV{PACKIT_SOURCE_SHA})
13+ set (git_tag $ENV{PACKIT_SOURCE_SHA} )
14+ elseif (DEFINED ENV{PACKIT_COMMIT_SHA})
15+ set (git_tag $ENV{PACKIT_COMMIT_SHA} )
16+ else ()
17+ set (git_tag develop)
18+ endif ()
19+
20+ FetchContent_Declare (Wannier90
21+ GIT_REPOSITORY ${git_repo}
22+ GIT_TAG ${git_tag}
23+ )
24+ FetchContent_MakeAvailable (Wannier90)
25+
26+ add_executable (main src/main.F90 )
27+ target_link_libraries (main PRIVATE Wannier90::wannier90 )
28+
29+ enable_testing ()
30+
31+ add_test (NAME smoke_test_lib
32+ COMMAND $<TARGET_FILE :main >
33+ )
34+ add_test (NAME smoke_test_exe
35+ COMMAND $<TARGET_FILE :Wannier90 ::exe > --version
36+ )
37+ add_test (NAME smoke_test_post
38+ COMMAND $<TARGET_FILE :Wannier90 ::post > --version
39+ )
Original file line number Diff line number Diff line change 1+ ../src/
Original file line number Diff line number Diff line change 1+ cmake_minimum_required (VERSION 3.25...3.29 )
2+ project (example_Wannier90 LANGUAGES Fortran )
3+
4+ find_package (Wannier90 REQUIRED )
5+
6+ add_executable (main src/main.F90 )
7+ target_link_libraries (main PRIVATE Wannier90::wannier90 )
8+
9+ enable_testing ()
10+
11+ add_test (NAME smoke_test_lib
12+ COMMAND $<TARGET_FILE :main >
13+ )
14+ add_test (NAME smoke_test_exe
15+ COMMAND $<TARGET_FILE :Wannier90 ::exe > --version
16+ )
17+ add_test (NAME smoke_test_post
18+ COMMAND $<TARGET_FILE :Wannier90 ::post > --version
19+ )
Original file line number Diff line number Diff line change 1+ ../src/
Original file line number Diff line number Diff line change 1+ cmake_minimum_required (VERSION 3.25...3.29 )
2+ project (example_Wannier90 LANGUAGES Fortran )
3+
4+ find_package (PkgConfig REQUIRED )
5+ pkg_check_modules (Wannier90 REQUIRED IMPORTED_TARGET wannier90 )
6+
7+ add_executable (main src/main.F90 )
8+ target_link_libraries (main PRIVATE PkgConfig::Wannier90 )
9+
10+ enable_testing ()
11+
12+ add_test (NAME smoke_test_lib
13+ COMMAND $<TARGET_FILE :main >
14+ )
Original file line number Diff line number Diff line change 1+ ../src/
Original file line number Diff line number Diff line change 1+ program wannier90_example
2+ use w90_library
3+ implicit none
4+
5+ ! TODO: Implement basic smoke test
6+ end program wannier90_example
You can’t perform that action at this time.
0 commit comments