Skip to content

Commit

Permalink
Merge branch 'develop' into release/MAPL-v3
Browse files Browse the repository at this point in the history
  • Loading branch information
mathomp4 committed Jun 15, 2024
2 parents 9ddb175 + d671e0e commit 632da4b
Show file tree
Hide file tree
Showing 4 changed files with 59 additions and 38 deletions.
3 changes: 2 additions & 1 deletion .circleci/config.yml
Original file line number Diff line number Diff line change
Expand Up @@ -57,7 +57,8 @@ workflows:
remove_pflogger: true
extra_cmake_options: "-DBUILD_WITH_PFLOGGER=OFF -DBUILD_WITH_FARGPARSE=OFF"
run_unit_tests: true
ctest_options: "-L 'ESSENTIAL' --output-on-failure"
# ExtData1G tests were removed from ESSENTIAL, so we run them separately here as UFS might still use 1G?
ctest_options: "-L 'ESSENTIAL|EXTDATA1G_SMALL_TESTS' --output-on-failure"

# Run MAPL Tutorials
- ci/run_mapl_tutorial:
Expand Down
9 changes: 7 additions & 2 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -69,9 +69,14 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
- fixed a bug in generate_newnxy in MAPL_SwathGridFactory.F90 (`NX*NY=Ncore`)
- pFIO Clients don't send "Done" message when there is no request
- Update `components.yaml`
- ESMA_cmake v3.45.1
- Fix bug in meson detection
- ESMA_cmake v3.45.3
- Fix bugs in meson detection
- Fix for building on older macOS
- Updated `checkpoint_simulator` to not create and close file if not writing
- Update ExtData tests
- Add new category of `SLOW` tests that take 10-30 seconds and remove them from the `ESSENTIAL`
label run in CI
- Remove ExtData1G tests from `ESSENTIAL` label

### Fixed

Expand Down
83 changes: 49 additions & 34 deletions Tests/ExtData_Testing_Framework/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -2,63 +2,78 @@
string(REPLACE " " ";" MPI_Fortran_LIBRARY_VERSION_LIST ${MPI_Fortran_LIBRARY_VERSION_STRING})
list(GET MPI_Fortran_LIBRARY_VERSION_LIST 0 MPI_Fortran_LIBRARY_VERSION_FIRSTWORD)
if(MPI_Fortran_LIBRARY_VERSION_FIRSTWORD MATCHES "Open")
list(APPEND MPIEXEC_PREFLAGS "-oversubscribe")
list(APPEND MPIEXEC_PREFLAGS "-oversubscribe")
endif()

file(STRINGS "test_cases/extdata_1g_cases.txt" TEST_CASES_1G)

set(cutoff "7")

# We want to make a list of tests that are slow and can
# be skipped for ESSENTIAL testing. Most ExtData tests
# take 1-2 seconds at most, but some take 20-30 seconds.
set(SLOW_TESTS
"case6"
"case14"
"case15"
"case16"
"case20"
"case22"
"case23"
)

foreach(TEST_CASE ${TEST_CASES_1G})
if (EXISTS ${CMAKE_CURRENT_LIST_DIR}/test_cases/${TEST_CASE}/nproc.rc)
file(READ ${CMAKE_CURRENT_LIST_DIR}/test_cases/${TEST_CASE}/nproc.rc num_procs)
file(READ ${CMAKE_CURRENT_LIST_DIR}/test_cases/${TEST_CASE}/nproc.rc num_procs)
else()
set(num_procs "1")
set(num_procs "1")
endif()
add_test(
NAME "ExtData1G_${TEST_CASE}"
COMMAND ${CMAKE_COMMAND}
-DTEST_CASE=${TEST_CASE}
-DMPIEXEC_EXECUTABLE=${MPIEXEC_EXECUTABLE}
-DMPIEXEC_NUMPROC_FLAG=${MPIEXEC_NUMPROC_FLAG}
-DMY_BINARY_DIR=${CMAKE_BINARY_DIR}/bin
-DMPIEXEC_PREFLAGS=${MPIEXEC_PREFLAGS}
-DIS_EXTDATA2G=NO
-P ${CMAKE_CURRENT_SOURCE_DIR}/run_extdata.cmake
)
if (${num_procs} LESS ${cutoff})
set_tests_properties ("ExtData1G_${TEST_CASE}" PROPERTIES LABELS "EXTDATA1G_SMALL_TESTS")
set_tests_properties ("ExtData1G_${TEST_CASE}" PROPERTIES LABELS "ESSENTIAL")
NAME "ExtData1G_${TEST_CASE}"
COMMAND ${CMAKE_COMMAND}
-DTEST_CASE=${TEST_CASE}
-DMPIEXEC_EXECUTABLE=${MPIEXEC_EXECUTABLE}
-DMPIEXEC_NUMPROC_FLAG=${MPIEXEC_NUMPROC_FLAG}
-DMY_BINARY_DIR=${CMAKE_BINARY_DIR}/bin
-DMPIEXEC_PREFLAGS=${MPIEXEC_PREFLAGS}
-DIS_EXTDATA2G=NO
-P ${CMAKE_CURRENT_SOURCE_DIR}/run_extdata.cmake
)
if (${num_procs} GREATER ${cutoff})
set_tests_properties ("ExtData1G_${TEST_CASE}" PROPERTIES LABELS "EXTDATA1G_BIG_TESTS")
elseif (${TEST_CASE} IN_LIST SLOW_TESTS)
set_tests_properties ("ExtData1G_${TEST_CASE}" PROPERTIES LABELS "EXTDATA1G_SLOW_TESTS")
else()
set_tests_properties ("ExtData1G_${TEST_CASE}" PROPERTIES LABELS "EXTDATA1G_BIG_TESTS")
set_tests_properties ("ExtData1G_${TEST_CASE}" PROPERTIES LABELS "EXTDATA1G_SMALL_TESTS")
endif()

endforeach()

file(STRINGS "test_cases/extdata_2g_cases.txt" TEST_CASES_2G)

foreach(TEST_CASE ${TEST_CASES_2G})

if (EXISTS ${CMAKE_CURRENT_LIST_DIR}/test_cases/${TEST_CASE}/nproc.rc)
file(READ ${CMAKE_CURRENT_LIST_DIR}/test_cases/${TEST_CASE}/nproc.rc num_procs)
file(READ ${CMAKE_CURRENT_LIST_DIR}/test_cases/${TEST_CASE}/nproc.rc num_procs)
else()
set(num_procs "1")
set(num_procs "1")
endif()
add_test(
NAME "ExtData2G_${TEST_CASE}"
COMMAND ${CMAKE_COMMAND}
-DTEST_CASE=${TEST_CASE}
-DMPIEXEC_EXECUTABLE=${MPIEXEC_EXECUTABLE}
-DMPIEXEC_NUMPROC_FLAG=${MPIEXEC_NUMPROC_FLAG}
-DMY_BINARY_DIR=${CMAKE_BINARY_DIR}/bin
-DMPIEXEC_PREFLAGS=${MPIEXEC_PREFLAGS}
-DIS_EXTDATA2G=YES
-P ${CMAKE_CURRENT_SOURCE_DIR}/run_extdata.cmake
)
if (${num_procs} LESS ${cutoff})
set_tests_properties ("ExtData2G_${TEST_CASE}" PROPERTIES LABELS "EXTDATA2G_SMALL_TESTS")
set_tests_properties ("ExtData2G_${TEST_CASE}" PROPERTIES LABELS "ESSENTIAL")
NAME "ExtData2G_${TEST_CASE}"
COMMAND ${CMAKE_COMMAND}
-DTEST_CASE=${TEST_CASE}
-DMPIEXEC_EXECUTABLE=${MPIEXEC_EXECUTABLE}
-DMPIEXEC_NUMPROC_FLAG=${MPIEXEC_NUMPROC_FLAG}
-DMY_BINARY_DIR=${CMAKE_BINARY_DIR}/bin
-DMPIEXEC_PREFLAGS=${MPIEXEC_PREFLAGS}
-DIS_EXTDATA2G=YES
-P ${CMAKE_CURRENT_SOURCE_DIR}/run_extdata.cmake
)
if (${num_procs} GREATER ${cutoff})
set_tests_properties ("ExtData2G_${TEST_CASE}" PROPERTIES LABELS "EXTDATA2G_BIG_TESTS")
elseif (${TEST_CASE} IN_LIST SLOW_TESTS)
set_tests_properties ("ExtData2G_${TEST_CASE}" PROPERTIES LABELS "EXTDATA2G_SLOW_TESTS")
else()
set_tests_properties ("ExtData2G_${TEST_CASE}" PROPERTIES LABELS "EXTDATA2G_BIG_TESTS")
set_tests_properties ("ExtData2G_${TEST_CASE}" PROPERTIES LABELS "EXTDATA2G_SMALL_TESTS")
set_tests_properties ("ExtData2G_${TEST_CASE}" PROPERTIES LABELS "ESSENTIAL")
endif()
endforeach()
2 changes: 1 addition & 1 deletion components.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ ESMA_env:
ESMA_cmake:
local: ./ESMA_cmake
remote: ../ESMA_cmake.git
tag: v3.45.1
tag: v3.45.3
develop: develop

ecbuild:
Expand Down

0 comments on commit 632da4b

Please sign in to comment.