Skip to content

Commit 79a4876

Browse files
committed
test standalone glob utility
1 parent add1917 commit 79a4876

File tree

1 file changed

+24
-5
lines changed

1 file changed

+24
-5
lines changed

tests/root_io/read_glob.cpp

Lines changed: 24 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
#include "podio/Reader.h"
2+
#include "podio/utilities/Glob.h"
23
#if PODIO_ENABLE_DATASOURCE
34
#include "podio/DataSource.h"
45
#endif
@@ -11,11 +12,29 @@
1112
int main() {
1213
const auto pattern = "example_frame_?.root";
1314
const auto expected_events = 20;
14-
const auto reader = podio::makeReader(pattern);
15-
reader.getEvents();
16-
ASSERT((reader.getEntries(podio::Category::Event) == expected_events), "Reader read invalid number of events");
15+
// standalone globbing
16+
17+
ASSERT(podio::utils::is_glob_pattern(pattern), "Failed to recognize glob pattern");
18+
auto files = podio::utils::expand_glob(pattern);
19+
ASSERT(files.size() == 2, "Glob expanded to a wrong number of files");
20+
ASSERT(files[0] == "example_frame_0.root", "Glob expanded to an unexpected file");
21+
ASSERT(files[1] == "example_frame_1.root", "Glob expanded to an unexpected file");
22+
{
23+
// externally resolved glob
24+
const auto reader = podio::makeReader(files);
25+
ASSERT((reader.getEvents() == expected_events), "Reader read invalid number of events");
1726
#if PODIO_ENABLE_DATASOURCE
18-
auto rdf = podio::CreateDataFrame(pattern);
19-
ASSERT(rdf.Count().GetValue() == expected_events, "DataSource read invalid number of events");
27+
auto rdf = podio::CreateDataFrame(files);
28+
ASSERT(rdf.Count().GetValue() == expected_events, "DataSource read invalid number of events");
2029
#endif // PODIO_ENABLE_DATASOURCE
30+
}
31+
{
32+
// implicit globbing
33+
const auto reader = podio::makeReader(pattern);
34+
ASSERT((reader.getEvents() == expected_events), "Reader read invalid number of events");
35+
#if PODIO_ENABLE_DATASOURCE
36+
auto rdf = podio::CreateDataFrame(pattern);
37+
ASSERT(rdf.Count().GetValue() == expected_events, "DataSource read invalid number of events");
38+
#endif // PODIO_ENABLE_DATASOURCE
39+
}
2140
}

0 commit comments

Comments
 (0)