25 bpo::options_description testOptions(
"Test options");
26 testOptions.add_options()
27 (
"foo.x", bpo::value<int>()->default_value(2))
28 (
"foo.y", bpo::value<float>()->default_value(3.f));
30 fair::mq::ProgOptions* options =
new fair::mq::ProgOptions();
31 options->AddToCmdLineOptions(testOptions);
32 options->ParseAll({
"cmd",
37 std::vector<ConfigParamSpec> specs = RootConfigParamHelpers::asConfigParamSpecs<o2::test::SimplePODClass>(
"foo");
39 std::vector<std::unique_ptr<ParamRetriever>> retrievers;
41 retrievers.emplace_back(std::move(fairmqRetriver));
43 auto store = std::make_unique<ConfigParamStore>(specs, std::move(retrievers));
48 REQUIRE(registry.
get<
int>(
"foo.x") == 1);
49 REQUIRE(registry.
get<
float>(
"foo.y") == 2.f);
52 auto pt = registry.
get<boost::property_tree::ptree>(
"foo");
53 REQUIRE(pt.get<
int>(
"x") == 1);
54 REQUIRE(pt.get<
float>(
"y") == 2.f);
57 auto obj = RootConfigParamHelpers::as<o2::test::SimplePODClass>(pt);
59 REQUIRE(obj.y == 2.f);