1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141
|
add_executable(
unittest
test.cpp
tbaselinedependentaveraging.cpp
tfitsdateobstime.cpp
tserialization.cpp
gridding/taveragecorrection.cpp
gridding/tvisibilitymodifier.cpp
idg/taveragebeam.cpp
io/tcachedimageset.cpp
io/tparsetreader.cpp
main/tcommandline.cpp
main/tmshelper.cpp
main/tsettings.cpp
math/timageoperations.cpp
math/trenderer.cpp
math/ttophatconvolution.cpp
model/tbbsmodel.cpp
msproviders/tnoisemsrowprovider.cpp
msproviders/tbdamsrowprovider.cpp
msproviders/tbdamsrowproviderdata.cpp
msproviders/tinmemoryprovider.cpp
msproviders/tmsrowproviderbase.cpp
scheduling/tgriddingtaskfactory.cpp
structures/timagingtable.cpp
structures/tfacetutil.cpp
structures/tmsselection.cpp
structures/toutputchannelinfo.cpp
structures/tprimarybeam.cpp
structures/tprimarybeamimageset.cpp
structures/tresources.cpp
system/tmappedfile.cpp)
target_compile_definitions(
unittest
PRIVATE
FACET_DEFINITION_FILE_2FACETS="${CMAKE_CURRENT_SOURCE_DIR}/data/ds9_2facets.reg"
FACET_DEFINITION_FILE_4FACETS="${CMAKE_CURRENT_SOURCE_DIR}/data/ds9_4facets.reg"
)
target_link_libraries(
unittest
PRIVATE wsclean-lib ${CASACORE_LIBRARIES} ${Boost_FILESYSTEM_LIBRARY}
${Boost_UNIT_TEST_FRAMEWORK_LIBRARY})
add_custom_target(
download_mocks
COMMAND ${CMAKE_SOURCE_DIR}/scripts/download_mwa_ms.sh
COMMAND ${CMAKE_SOURCE_DIR}/scripts/download_h5solution_file.sh
WORKING_DIRECTORY ${CMAKE_BINARY_DIR})
set(WSCLEAN_DATA_URL https://support.astron.nl/software/ci_data/wsclean)
if(CMAKE_VERSION VERSION_GREATER_EQUAL "3.24")
cmake_policy(SET CMP0135 "NEW")
endif()
ExternalProject_Add(
jvla_test_ms
URL ${WSCLEAN_DATA_URL}/JVLA-MultiBand-S1_C5-minimal.ms.tar.bz2
URL_HASH
SHA256=7c8d41b5ff59c8736b1223e6b855a96e410f27fb4be05d179c8292fdb78cdc7e
SOURCE_DIR ${CMAKE_BINARY_DIR}/test_data/JVLA-MultiBand-S1_C5-minimal.ms
CONFIGURE_COMMAND ""
BUILD_COMMAND ""
INSTALL_COMMAND "")
# A dataset generated using the following command:
# DP3 msin=MWA-1052736496-averaged.ms msin.ntimes=4 msin.nchan=1 \
# msin.baseline="1,2,126,217" msout=MWA_BDA_MOCK.ms msout.overwrite=True \
# steps=[filter,bdaaverager] filter.blrange=[1000,10000] \
# bdaaverager.timebase=5000
ExternalProject_Add(
mwa_bda_mock_ms
URL ${WSCLEAN_DATA_URL}/MWA_BDA_MOCK.ms.tar.bz2
URL_HASH
SHA256=cc249aa62771d14d163e2a5d90fbb6110c57c13bba07b762acad875a64a15f41
SOURCE_DIR ${CMAKE_BINARY_DIR}/test_data/MWA_BDA_MOCK.ms
CONFIGURE_COMMAND ""
BUILD_COMMAND ""
INSTALL_COMMAND "")
# This is a 9h long SKA-mid simulated measurement set.
# It contains a point source off the phase center.
# These conditions ensure a strong variablity of the PSF in different directions.
# The dataset is heavily averaged to reduce its size.
ExternalProject_Add(
ska_low_ms
URL ${WSCLEAN_DATA_URL}/ska-low-sim-averaged.tar.gz
URL_HASH
SHA256=79f723f2165456d715e3019893f1a6701ef92cf9e106c4ea251c95be567215c5
SOURCE_DIR ${CMAKE_BINARY_DIR}/test_data/ska-low-sim-averaged.ms
CONFIGURE_COMMAND ""
BUILD_COMMAND ""
INSTALL_COMMAND "")
ExternalProject_Add(
gmrt_ms
URL https://support.astron.nl/software/ci_data/EveryBeam/GMRT_MOCK.tar.bz2
URL_HASH
SHA256=5286b6f19f226ed97a8198438edcc3c5b09481376ac134135dd595107dc39fc3
SOURCE_DIR ${CMAKE_BINARY_DIR}/test_data/GMRT_MOCK.ms
CONFIGURE_COMMAND ""
BUILD_COMMAND ""
INSTALL_COMMAND "")
ExternalProject_Add(
lofar_3c196_ms
URL ${WSCLEAN_DATA_URL}/LOFAR_3C196.ms.tar.bz2
URL_HASH
SHA256=f834f4eefb2ceffc09194791744c53ebc5154e947a5437a8ea42d259ccdd5fc3
SOURCE_DIR ${CMAKE_BINARY_DIR}/test_data/LOFAR_3C196.ms
CONFIGURE_COMMAND ""
BUILD_COMMAND ""
INSTALL_COMMAND "")
add_custom_target(
unitchecks
DEPENDS unittest download_mocks jvla_test_ms mwa_bda_mock_ms ska_low_ms
gmrt_ms
WORKING_DIRECTORY ${CMAKE_BINARY_DIR}
COMMAND unittest)
file(MAKE_DIRECTORY ${CMAKE_BINARY_DIR}/test_data/)
add_subdirectory(python)
add_custom_target(check DEPENDS unitchecks;integrationchecks)
add_custom_target(
coverage
DEPENDS check
COMMAND
gcovr --merge-mode-functions=separate -r ${CMAKE_SOURCE_DIR} -e
'.*/tests/.*' -e '.*/external/.*' -e '.*/CompilerIdCXX/.*'
${CMAKE_BINARY_DIR})
# Collect all tests that should run on das5 in a single target
add_custom_target(
nightlychecks
DEPENDS integrationchecks;facetchecks;gridderchecks;subpixelrendererchecks)
|