Skip to content

Commit f129b45

Browse files
committed
Fix restart statistics tests failing on second run or individual runs
1 parent a3a6e75 commit f129b45

File tree

1 file changed

+36
-12
lines changed

1 file changed

+36
-12
lines changed

tests/multio/action/statistics/restart/CMakeLists.txt

+36-12
Original file line numberDiff line numberDiff line change
@@ -36,29 +36,39 @@ set(RESTART_MAIN_FOLDER "NamesAreNotGuaranteedToBeUniqueAcrossPlans_0")
3636
set(RESULT_FILE "Result_chunks_0_of_11.grib")
3737
set(RESTART_ID "none")
3838

39+
ecbuild_add_test(
40+
TARGET ${PREFIX}_clean_dir
41+
PROPERTIES FIXTURES_SETUP ${PREFIX}_clean_dir
42+
SKIP_RETURN_CODE 127
43+
COMMAND rm
44+
ARGS -rf ${CMAKE_CURRENT_BINARY_DIR}/${RESTART_MAIN_FOLDER}
45+
)
46+
3947
ecbuild_add_test(
4048
TARGET ${PREFIX}_run_0-24_new_restart
4149
CONDITION HAVE_ATLAS_IO
4250
TEST_DEPENDS ${PREFIX}_get_data
51+
PROPERTIES FIXTURES_SETUP ${PREFIX}_run_0-24_new_restart
52+
FIXTURES_REQUIRED ${PREFIX}_clean_dir
4353
ENVIRONMENT READ_RESTART=${READ_RESTART} WRITE_RESTART=${WRITE_RESTART} RESTART_MAIN_FOLDER=${RESTART_MAIN_FOLDER} RESULT_FILE=${RESULT_FILE} RESTART_ID=${RESTART_ID}
4454
COMMAND multio-feed
4555
ARGS --stepRange=0-24 --decode --plans=${CMAKE_CURRENT_SOURCE_DIR}/test-restart.yaml standard_0_statistics_test_data.grib
4656
)
4757

4858
# ecbuild_add_test(
4959
# TARGET ${PREFIX}_check_metadata_0-24_new_restart
50-
# TEST_DEPENDS ${PREFIX}_run_0-24_new_restart
60+
# PROPERTIES FIXTURES_REQUIRED ${PREFIX}_run_0-24_new_restart
5161
# ARGS -H "Result_chunks_0_of_11.grib" "Reference_chunks_0_of_11.grib"
5262
# COMMAND grib_compare
5363
# )
54-
#
64+
#
5565
# ecbuild_add_test(
5666
# TARGET ${PREFIX}_check_values_0-24_new_restart
57-
# TEST_DEPENDS ${PREFIX}_check_metadata_0-24_new_restart
67+
# PROPERTIES FIXTURES_REQUIRED ${PREFIX}_run_0-24_new_restart
5868
# ARGS -P -T10 "Result_chunks_0_of_11.grib" "Reference_chunks_0_of_11.grib"
5969
# COMMAND grib_compare
6070
# )
61-
#
71+
6272
# Set the number of steps and loop through them
6373
set(NUM_STEPS 11)
6474
set( prevStepRange "0-24" )
@@ -84,22 +94,23 @@ foreach(i RANGE 1 ${NUM_STEPS})
8494
ecbuild_add_test(
8595
TARGET ${PREFIX}_run_${stepRange}_new_restart
8696
CONDITION HAVE_ATLAS_IO
87-
TEST_DEPENDS ${PREFIX}_check_metadata_${prevStepRange}_new_restart
97+
PROPERTIES FIXTURES_SETUP ${PREFIX}_run_${stepRange}_new_restart
98+
FIXTURES_REQUIRED ${PREFIX}_run_${prevStepRange}_new_restart
8899
ENVIRONMENT READ_RESTART=${READ_RESTART} WRITE_RESTART=${WRITE_RESTART} RESTART_MAIN_FOLDER=${RESTART_MAIN_FOLDER} RESULT_FILE=${RESULT_FILE} RESTART_ID=${RESTART_ID}
89100
COMMAND multio-feed
90101
ARGS --stepRange=${stepRange} --decode --plans=${CMAKE_CURRENT_SOURCE_DIR}/test-restart.yaml standard_0_statistics_test_data.grib
91102
)
92103

93104
# ecbuild_add_test(
94105
# TARGET ${PREFIX}_check_metadata_${stepRange}_new_restart
95-
# TEST_DEPENDS ${PREFIX}_run_${stepRange}_new_restart
106+
# PROPERTIES FIXTURES_REQUIRED ${PREFIX}_run_${stepRange}_new_restart
96107
# ARGS -H "Result_chunks_${i}_of_11.grib" "Reference_chunks_${i}_of_11.grib"
97108
# COMMAND grib_compare
98109
# )
99110
#
100111
# ecbuild_add_test(
101112
# TARGET ${PREFIX}_check_values_${stepRange}_new_restart
102-
# TEST_DEPENDS ${PREFIX}_check_metadata_${stepRange}_new_restart
113+
# PROPERTIES FIXTURES_REQUIRED ${PREFIX}_run_${stepRange}_new_restart
103114
# ARGS -P -T10 "Result_chunks_${i}_of_11.grib" "Reference_chunks_${i}_of_11.grib"
104115
# COMMAND grib_compare
105116
# )
@@ -120,38 +131,51 @@ ecbuild_add_test(
120131
TARGET ${PREFIX}_run_single_chunk_new_restart
121132
CONDITION HAVE_ATLAS_IO
122133
TEST_DEPENDS ${PREFIX}_get_data
134+
PROPERTIES FIXTURES_SETUP ${PREFIX}_run_single_chunk_new_restart
135+
FIXTURES_REQUIRED ${PREFIX}_clean_dir
123136
ENVIRONMENT READ_RESTART=${READ_RESTART} WRITE_RESTART=${WRITE_RESTART} RESTART_MAIN_FOLDER=${RESTART_MAIN_FOLDER} RESULT_FILE=${RESULT_FILE} RESTART_ID=${RESTART_ID}
124137
COMMAND multio-feed
125138
ARGS --decode --plans=${CMAKE_CURRENT_SOURCE_DIR}/test-restart.yaml standard_0_statistics_test_data.grib
126139
)
127140

128141
ecbuild_add_test(
129142
TARGET ${PREFIX}_check_metadata_single_chunk_new_restart
130-
TEST_DEPENDS ${PREFIX}_run_single_chunk_new_restart
131143
ARGS -H "Result_single_chunk.grib" "Reference_single_chunk.grib"
132144
COMMAND grib_compare
133145
)
134146

147+
# Workaround until we figure out how to pass two required fixtures, "A;B" does not work...
148+
set_tests_properties(${PREFIX}_check_metadata_single_chunk_new_restart PROPERTIES
149+
FIXTURES_REQUIRED "${PREFIX}_run_${stepRange}_new_restart;${PREFIX}_run_single_chunk_new_restart")
150+
135151
ecbuild_add_test(
136152
TARGET ${PREFIX}_check_values_single_chunk_new_restart
137-
TEST_DEPENDS ${PREFIX}_check_metadata_single_chunk_new_restart
138153
ARGS -P -T10 "Result_single_chunk.grib" "Reference_single_chunk.grib"
139154
COMMAND grib_compare
140155
)
141156

157+
# Workaround until we figure out how to pass two required fixtures...
158+
set_tests_properties(${PREFIX}_check_values_single_chunk_new_restart PROPERTIES
159+
FIXTURES_REQUIRED "${PREFIX}_run_${stepRange}_new_restart;${PREFIX}_run_single_chunk_new_restart")
142160

143161
#
144162
# Final comparison
145163
ecbuild_add_test(
146164
TARGET ${PREFIX}_check_metadata_singleVSrestart_chunk_new_restart
147-
TEST_DEPENDS ${PREFIX}_check_values_single_chunk_new_restart
148165
ARGS -H "Result_chunks_11_of_11.grib" "Result_single_chunk.grib"
149166
COMMAND grib_compare
150167
)
151168

169+
# Workaround until we figure out how to pass two required fixtures...
170+
set_tests_properties(${PREFIX}_check_metadata_singleVSrestart_chunk_new_restart PROPERTIES
171+
FIXTURES_REQUIRED "${PREFIX}_run_${stepRange}_new_restart;${PREFIX}_run_single_chunk_new_restart")
172+
152173
ecbuild_add_test(
153174
TARGET ${PREFIX}_check_values_singleVSrestart_chunk_new_restart
154-
TEST_DEPENDS ${PREFIX}_check_metadata_singleVSrestart_chunk_new_restart
155175
ARGS -P -T10 "Result_chunks_11_of_11.grib" "Result_single_chunk.grib"
156176
COMMAND grib_compare
157-
)
177+
)
178+
179+
# Workaround until we figure out how to pass two required fixtures...
180+
set_tests_properties(${PREFIX}_check_values_singleVSrestart_chunk_new_restart PROPERTIES
181+
FIXTURES_REQUIRED "${PREFIX}_run_${stepRange}_new_restart;${PREFIX}_run_single_chunk_new_restart")

0 commit comments

Comments
 (0)