Skip to content

Commit 1fc9b4b

Browse files
committed
[roottest] use fixtures for dataframe tests
There are many executables and each receives fixture to correctly generate it for correspondent test
1 parent a535d37 commit 1fc9b4b

File tree

2 files changed

+142
-57
lines changed

2 files changed

+142
-57
lines changed

roottest/root/dataframe/.rootrc

Lines changed: 0 additions & 2 deletions
This file was deleted.
Lines changed: 142 additions & 55 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
if(NOT ROOT_dataframe_FOUND)
1+
if(NOT dataframe)
22
return()
33
endif()
44

@@ -11,7 +11,7 @@ endif()
1111

1212
set(DFLIBRARIES Core RIO Hist Tree MathCore TreePlayer ROOTDataFrame ROOTVecOps)
1313

14-
if(ROOT_root7_FOUND)
14+
if(root7)
1515
list(APPEND DFLIBRARIES ROOTNTuple)
1616
endif()
1717

@@ -42,21 +42,30 @@ endif()
4242
# ROOT-9366
4343
# We use this to write something like the FCC data model, dictionaries done with aclic
4444
ROOTTEST_ADD_TEST(writeFcc
45-
MACRO writeFcc.C+)
45+
MACRO writeFcc.C+
46+
FIXTURES_SETUP root-dataframe-writeFcc-fixture)
4647

4748
# We build and run an executable that reads the file created above without dictionaries
48-
ROOTTEST_GENERATE_EXECUTABLE(test_readFcc readFcc.C LIBRARIES ${DFLIBRARIES})
49+
ROOTTEST_GENERATE_EXECUTABLE(test_readFcc
50+
readFcc.C
51+
LIBRARIES ${DFLIBRARIES}
52+
FIXTURES_SETUP root-dataframe-readFcc-fixture)
4953

5054
ROOTTEST_ADD_TEST(test_readFcc
5155
EXEC ./test_readFcc
5256
COPY_TO_BUILDDIR fccSkim.root
53-
DEPENDS ${GENERATE_EXECUTABLE_TEST} writeFcc)
57+
FIXTURES_REQUIRED root-dataframe-writeFcc-fixture
58+
root-dataframe-readFcc-fixture)
5459

5560
# ROOT-9116
56-
ROOTTEST_GENERATE_EXECUTABLE(test_gdirectoryRestore test_gdirectoryRestore.cxx LIBRARIES ${DFLIBRARIES})
61+
ROOTTEST_GENERATE_EXECUTABLE(test_gdirectoryRestore
62+
test_gdirectoryRestore.cxx
63+
LIBRARIES ${DFLIBRARIES}
64+
FIXTURES_SETUP root-dataframe-gdirectoryRestore-fixture)
65+
5766
ROOTTEST_ADD_TEST(test_gdirectoryRestore
5867
EXEC ./test_gdirectoryRestore
59-
DEPENDS ${GENERATE_EXECUTABLE_TEST})
68+
FIXTURES_REQUIRED root-dataframe-gdirectoryRestore-fixture)
6069

6170
ROOTTEST_ADD_TEST(templateRecursionLimit
6271
MACRO test_templateRecursionLimit.C)
@@ -71,50 +80,71 @@ endif()
7180
if(NOT CMAKE_BUILD_TYPE STREQUAL "Debug")
7281
ROOTTEST_GENERATE_EXECUTABLE(test_hugeRDF test_hugeRDF.cxx
7382
COMPILE_FLAGS "-O2" # too slow otherwise
74-
LIBRARIES ${DFLIBRARIES})
83+
LIBRARIES ${DFLIBRARIES}
84+
FIXTURES_SETUP root-dataframe-hugeRDF-fixture)
7585

7686
ROOTTEST_ADD_TEST(test_hugeRDF
7787
EXEC ./test_hugeRDF
7888
LABELS longtest
79-
DEPENDS ${GENERATE_EXECUTABLE_TEST})
89+
FIXTURES_REQUIRED root-dataframe-hugeRDF-fixture)
8090
endif()
8191

82-
ROOTTEST_GENERATE_EXECUTABLE(test_snapshot_manytasks test_snapshot_manytasks.cxx LIBRARIES ${DFLIBRARIES})
92+
ROOTTEST_GENERATE_EXECUTABLE(test_snapshot_manytasks
93+
test_snapshot_manytasks.cxx
94+
LIBRARIES ${DFLIBRARIES}
95+
FIXTURES_SETUP root-dataframe-snapshot_manytasks-fixture)
96+
8397
ROOTTEST_ADD_TEST(test_snapshot_manytasks
8498
EXEC ./test_snapshot_manytasks
85-
DEPENDS ${GENERATE_EXECUTABLE_TEST})
99+
FIXTURES_REQUIRED root-dataframe-snapshot_manytasks-fixture)
100+
101+
ROOTTEST_GENERATE_EXECUTABLE(test_columnoverride
102+
test_columnoverride.cxx
103+
LIBRARIES ${DFLIBRARIES}
104+
FIXTURES_SETUP root-dataframe-columnoverride-fixture)
86105

87-
ROOTTEST_GENERATE_EXECUTABLE(test_columnoverride test_columnoverride.cxx LIBRARIES ${DFLIBRARIES})
88106
ROOTTEST_ADD_TEST(test_columnoverride
89107
EXEC ./test_columnoverride
90-
DEPENDS ${GENERATE_EXECUTABLE_TEST})
108+
FIXTURES_REQUIRED root-dataframe-columnoverride-fixture)
109+
110+
ROOTTEST_GENERATE_EXECUTABLE(regression_emptysource
111+
regression_emptysource.cxx
112+
LIBRARIES ${DFLIBRARIES}
113+
FIXTURES_SETUP root-dataframe-regression_emptysource-fixture)
91114

92-
ROOTTEST_GENERATE_EXECUTABLE(regression_emptysource regression_emptysource.cxx LIBRARIES ${DFLIBRARIES})
93115
ROOTTEST_ADD_TEST(regression_emptysource
94116
EXEC ./regression_emptysource
95-
DEPENDS ${GENERATE_EXECUTABLE_TEST})
117+
FIXTURES_REQUIRED root-dataframe-regression_emptysource-fixture)
96118

97119
ROOTTEST_ADD_TEST(test_snapshotNFiles
98120
MACRO test_snapshotNFiles.C)
99121

100122
ROOTTEST_ADD_TEST(test_listFilesCtor
101123
MACRO test_listFilesCtor.C)
102124

103-
ROOTTEST_GENERATE_EXECUTABLE(emptysource test_emptysource.cxx LIBRARIES ${DFLIBRARIES})
125+
ROOTTEST_GENERATE_EXECUTABLE(emptysource
126+
test_emptysource.cxx
127+
LIBRARIES ${DFLIBRARIES}
128+
FIXTURES_SETUP root-dataframe-emptysource-fixture)
129+
104130
ROOTTEST_ADD_TEST(emptysource
105131
EXEC ./emptysource
106132
OUTREF test_emptysource.ref
107-
DEPENDS ${GENERATE_EXECUTABLE_TEST})
133+
FIXTURES_REQUIRED root-dataframe-emptysource-fixture)
108134

109135
ROOTTEST_ADD_TEST(regression_snapshot
110136
MACRO regression_snapshot.C+
111137
OUTREF regression_snapshot.ref)
112138

113-
ROOTTEST_GENERATE_EXECUTABLE(test_inference test_inference.cxx LIBRARIES ${DFLIBRARIES})
139+
ROOTTEST_GENERATE_EXECUTABLE(test_inference
140+
test_inference.cxx
141+
LIBRARIES ${DFLIBRARIES}
142+
FIXTURES_SETUP root-dataframe-test_inference-fixture)
143+
114144
ROOTTEST_ADD_TEST(test_inference
115145
EXEC ./test_inference
116146
OUTREF test_inference.ref
117-
DEPENDS ${GENERATE_EXECUTABLE_TEST})
147+
FIXTURES_REQUIRED root-dataframe-test_inference-fixture)
118148

119149
ROOTTEST_ADD_TEST(test_snapshot_dir
120150
MACRO test_snapshot_dir.C+
@@ -124,7 +154,7 @@ ROOTTEST_ADD_TEST(test_snapshot_dir
124154
ROOTTEST_ADD_TEST(test_snapshot_subdir
125155
MACRO test_snapshot_subdir.C+
126156
${WILLFAIL_ON_WIN32}
127-
OUTREF test_snapshot_subdir.ref)
157+
OUTREF test_snapshot_subdir.ref)
128158

129159
ROOTTEST_ADD_TEST(test_snapshotMT_dir
130160
MACRO test_snapshotMT_dir.C+
@@ -134,8 +164,8 @@ ROOTTEST_ADD_TEST(test_snapshotMT_dir
134164
ROOTTEST_ADD_TEST(test_snapshotMT_subdir
135165
MACRO test_snapshotMT_subdir.C+
136166
${WILLFAIL_ON_WIN32}
137-
OUTREF test_snapshotMT_subdir.ref)
138-
167+
OUTREF test_snapshotMT_subdir.ref)
168+
139169
ROOTTEST_ADD_TEST(test_stringfiltercolumn
140170
MACRO test_stringfiltercolumn.C+
141171
OUTREF test_stringfiltercolumn.ref)
@@ -148,107 +178,164 @@ ROOTTEST_ADD_TEST(test_reduce
148178
MACRO test_reduce.C+
149179
OUTREF test_reduce.ref)
150180

151-
ROOTTEST_GENERATE_EXECUTABLE(test_callables test_callables.cxx LIBRARIES ${DFLIBRARIES})
181+
ROOTTEST_GENERATE_EXECUTABLE(test_callables
182+
test_callables.cxx
183+
LIBRARIES ${DFLIBRARIES}
184+
FIXTURES_SETUP root-dataframe-test_callables-fixture)
185+
152186
ROOTTEST_ADD_TEST(test_callables
153187
EXEC ./test_callables
154188
OUTREF test_callables.ref
155-
DEPENDS ${GENERATE_EXECUTABLE_TEST})
189+
FIXTURES_REQUIRED root-dataframe-test_callables-fixture)
190+
191+
ROOTTEST_GENERATE_EXECUTABLE(testIMT
192+
testIMT.cxx
193+
LIBRARIES ${DFLIBRARIES}
194+
FIXTURES_SETUP root-dataframe-testIMT-fixture)
156195

157-
ROOTTEST_GENERATE_EXECUTABLE(testIMT testIMT.cxx LIBRARIES ${DFLIBRARIES})
158196
ROOTTEST_ADD_TEST(testIMT
159197
EXEC ./testIMT
160198
OUTREF testIMT.ref
161-
DEPENDS ${GENERATE_EXECUTABLE_TEST})
199+
FIXTURES_REQUIRED root-dataframe-testIMT-fixture)
162200

163201
if(MSVC AND MSVC_VERSION LESS 1924 AND NOT win_broken_tests)
164202
# FIXME: with Visual Studio v16.3, test_readerarray fails in debug mode, so compile it in release mode
165203
# this is fixed with more recent versions of Visual Studio
166-
ROOTTEST_GENERATE_EXECUTABLE(test_readerarray test_readerarray.cxx COMPILE_FLAGS ${CMAKE_CXX_FLAGS_RELEASE} LIBRARIES ${DFLIBRARIES})
167-
else()
168-
ROOTTEST_GENERATE_EXECUTABLE(test_readerarray test_readerarray.cxx LIBRARIES ${DFLIBRARIES})
204+
set(_test_flags ${CMAKE_CXX_FLAGS_RELEASE})
169205
endif()
206+
ROOTTEST_GENERATE_EXECUTABLE(test_readerarray
207+
test_readerarray.cxx
208+
COMPILE_FLAGS ${_test_flags}
209+
LIBRARIES ${DFLIBRARIES}
210+
FIXTURES_SETUP root-dataframe-test_readerarray-fixture)
211+
170212
ROOTTEST_ADD_TEST(test_readerarray
171213
EXEC ./test_readerarray
172214
OUTREF test_readerarray.ref
173-
DEPENDS ${GENERATE_EXECUTABLE_TEST})
215+
FIXTURES_REQUIRED root-dataframe-test_readerarray-fixture)
216+
217+
ROOTTEST_GENERATE_EXECUTABLE(typeguessing
218+
test_typeguessing.cxx
219+
LIBRARIES ${DFLIBRARIES}
220+
FIXTURES_SETUP root-dataframe-typeguessing-fixture)
174221

175-
ROOTTEST_GENERATE_EXECUTABLE(typeguessing test_typeguessing.cxx LIBRARIES ${DFLIBRARIES})
176222
ROOTTEST_ADD_TEST(typeguessing
177223
EXEC ./typeguessing
178224
OUTREF test_typeguessing.ref
179-
DEPENDS ${GENERATE_EXECUTABLE_TEST})
225+
FIXTURES_REQUIRED root-dataframe-typeguessing-fixture)
226+
227+
ROOTTEST_GENERATE_EXECUTABLE(misc
228+
test_misc.cxx
229+
LIBRARIES ${DFLIBRARIES}
230+
FIXTURES_SETUP root-dataframe-misc-fixture)
180231

181-
ROOTTEST_GENERATE_EXECUTABLE(misc test_misc.cxx LIBRARIES ${DFLIBRARIES})
182232
ROOTTEST_ADD_TEST(misc
183233
EXEC ./misc
184234
OUTREF test_misc.ref
185-
DEPENDS ${GENERATE_EXECUTABLE_TEST})
235+
FIXTURES_REQUIRED root-dataframe-misc-fixture)
186236

187237
ROOTTEST_ADD_TEST(ctors
188238
MACRO test_ctors.C+
189239
OUTREF test_ctors.ref)
190240

191-
ROOTTEST_GENERATE_EXECUTABLE(branchoverwrite test_branchoverwrite.cxx LIBRARIES ${DFLIBRARIES})
241+
ROOTTEST_GENERATE_EXECUTABLE(branchoverwrite
242+
test_branchoverwrite.cxx
243+
LIBRARIES ${DFLIBRARIES}
244+
FIXTURES_SETUP root-dataframe-branchoverwrite-fixture)
245+
192246
ROOTTEST_ADD_TEST(branchoverwrite
193247
EXEC ./branchoverwrite
194248
OUTREF test_branchoverwrite.ref
195-
DEPENDS ${GENERATE_EXECUTABLE_TEST})
249+
FIXTURES_REQUIRED root-dataframe-branchoverwrite-fixture)
250+
251+
ROOTTEST_GENERATE_EXECUTABLE(regression_multipletriggerrun
252+
regression_multipletriggerrun.cxx
253+
LIBRARIES ${DFLIBRARIES}
254+
FIXTURES_SETUP root-dataframe-regression_multipletriggerrun-fixture)
196255

197-
ROOTTEST_GENERATE_EXECUTABLE(regression_multipletriggerrun regression_multipletriggerrun.cxx LIBRARIES ${DFLIBRARIES})
198256
ROOTTEST_ADD_TEST(regression_multipletriggerrun
199257
EXEC ./regression_multipletriggerrun
200258
OUTREF regression_multipletriggerrun.ref
201-
DEPENDS ${GENERATE_EXECUTABLE_TEST})
259+
FIXTURES_REQUIRED root-dataframe-regression_multipletriggerrun-fixture)
260+
261+
ROOTTEST_GENERATE_EXECUTABLE(regression_zeroentries
262+
regression_zeroentries.cxx
263+
LIBRARIES ${DFLIBRARIES}
264+
FIXTURES_SETUP root-dataframe-regression_zeroentries-fixture)
202265

203-
ROOTTEST_GENERATE_EXECUTABLE(regression_zeroentries regression_zeroentries.cxx LIBRARIES ${DFLIBRARIES})
204266
ROOTTEST_ADD_TEST(regression_zeroentries
205267
EXEC ./regression_zeroentries
206-
DEPENDS ${GENERATE_EXECUTABLE_TEST})
207-
268+
FIXTURES_REQUIRED root-dataframe-regression_zeroentries-fixture)
208269

209-
ROOTTEST_GENERATE_EXECUTABLE(foreach test_foreach.cxx LIBRARIES ${DFLIBRARIES})
270+
ROOTTEST_GENERATE_EXECUTABLE(foreach
271+
test_foreach.cxx
272+
LIBRARIES ${DFLIBRARIES}
273+
FIXTURES_SETUP root-dataframe-foreach-fixture)
210274
ROOTTEST_ADD_TEST(foreach
211275
EXEC ./foreach
212276
OUTREF test_foreach.ref
213-
DEPENDS ${GENERATE_EXECUTABLE_TEST})
277+
FIXTURES_REQUIRED root-dataframe-foreach-fixture)
278+
279+
ROOTTEST_GENERATE_EXECUTABLE(reports
280+
test_reports.cxx
281+
LIBRARIES ${DFLIBRARIES}
282+
FIXTURES_SETUP root-dataframe-reports-fixture)
214283

215-
ROOTTEST_GENERATE_EXECUTABLE(reports test_reports.cxx LIBRARIES ${DFLIBRARIES})
216284
ROOTTEST_ADD_TEST(reports
217285
EXEC ./reports
218286
OUTREF test_reports.ref
219-
DEPENDS ${GENERATE_EXECUTABLE_TEST})
287+
FIXTURES_REQUIRED root-dataframe-reports-fixture)
288+
289+
ROOTTEST_GENERATE_EXECUTABLE(par
290+
test_par.cxx
291+
LIBRARIES ${DFLIBRARIES}
292+
FIXTURES_SETUP root-dataframe-par-fixture)
220293

221-
ROOTTEST_GENERATE_EXECUTABLE(par test_par.cxx LIBRARIES ${DFLIBRARIES})
222294
ROOTTEST_ADD_TEST(par
223295
EXEC ./par
224296
OUTREF test_par.ref
225-
DEPENDS ${GENERATE_EXECUTABLE_TEST})
297+
FIXTURES_REQUIRED root-dataframe-par-fixture)
298+
299+
ROOTTEST_GENERATE_EXECUTABLE(read_leaves
300+
test_read_leaves.cxx
301+
LIBRARIES ${DFLIBRARIES}
302+
FIXTURES_SETUP root-dataframe-read_leaves-fixture)
226303

227-
ROOTTEST_GENERATE_EXECUTABLE(read_leaves test_read_leaves.cxx LIBRARIES ${DFLIBRARIES})
228304
ROOTTEST_ADD_TEST(read_leaves
229305
EXEC ./read_leaves
230306
COPY_TO_BUILDDIR test_read_leaves.h
231-
DEPENDS ${GENERATE_EXECUTABLE_TEST})
307+
FIXTURES_REQUIRED root-dataframe-read_leaves-fixture)
308+
309+
ROOTTEST_GENERATE_EXECUTABLE(read_leaves_nodict
310+
test_read_leaves_nodict.cxx
311+
LIBRARIES ${DFLIBRARIES}
312+
FIXTURES_SETUP root-dataframe-read_leaves_nodict-fixture)
232313

233-
ROOTTEST_GENERATE_EXECUTABLE(read_leaves_nodict test_read_leaves_nodict.cxx LIBRARIES ${DFLIBRARIES})
234314
ROOTTEST_ADD_TEST(read_leaves_nodict
235315
EXEC ./read_leaves_nodict
236-
DEPENDS ${GENERATE_EXECUTABLE_TEST} read_leaves)
316+
FIXTURES_REQUIRED root-dataframe-read_leaves_nodict-fixture)
237317

238318
ROOTTEST_ADD_TEST(test_readTotemNtuple
239319
MACRO test_readTotemNtuple.C
240320
COPY_TO_BUILDDIR Slimmed_TotemNTuple_9883.040.ntuple.root
241321
OUTREF test_readTotemNtuple.ref)
242322

243-
ROOTTEST_GENERATE_EXECUTABLE(test_progressiveCSV test_progressiveCSV.cxx LIBRARIES ${DFLIBRARIES})
323+
ROOTTEST_GENERATE_EXECUTABLE(test_progressiveCSV
324+
test_progressiveCSV.cxx
325+
LIBRARIES ${DFLIBRARIES}
326+
FIXTURES_SETUP root-dataframe-test_progressiveCSV-fixture)
327+
244328
ROOTTEST_ADD_TEST(test_progressiveCSV
245329
COMMAND ${CMAKE_CURRENT_SOURCE_DIR}/test_progressiveCSV.sh
246330
COPY_TO_BUILDDIR test_progressiveCSV.csv
247331
OUTREF test_progressiveCSV.ref
248-
DEPENDS ${GENERATE_EXECUTABLE_TEST})
332+
FIXTURES_REQUIRED root-dataframe-test_progressiveCSV-fixture)
249333

250334
# need the '+' to autogenerate required dictionaries with ACLiC
251-
ROOTTEST_ADD_TEST(test_nested_rvec_snapshot MACRO test_nested_rvec_snapshot.C+)
252-
ROOTTEST_ADD_TEST(test_snapshot_copyaddresses MACRO test_snapshot_copyaddresses.C+)
335+
ROOTTEST_ADD_TEST(test_nested_rvec_snapshot
336+
MACRO test_nested_rvec_snapshot.C+)
337+
338+
ROOTTEST_ADD_TEST(test_snapshot_copyaddresses
339+
MACRO test_snapshot_copyaddresses.C+)
253340

254341
ROOT_ADD_GTEST(test_norootextension test_norootextension.cxx LIBRARIES ROOT::ROOTDataFrame)

0 commit comments

Comments
 (0)