TEST_F(OptionsConfigParserPluginTests, test_get_option) { Config c; auto s = c.update(getTestConfigMap()); EXPECT_TRUE(s.ok()); EXPECT_EQ(s.toString(), "OK"); EXPECT_EQ(c.getParser("options")->getData().get_child("options").get<bool>( "enable_monitor"), true); }
TEST_F(ConfigTests, test_get_parser) { Registry::add<TestConfigParserPlugin>("config_parser", "test"); EXPECT_TRUE(Registry::setActive("config_parser", "test").ok()); Config c; auto s = c.update(getTestConfigMap()); EXPECT_TRUE(s.ok()); EXPECT_EQ(s.toString(), "OK"); auto plugin = Config::getInstance().getParser("test"); EXPECT_TRUE(plugin != nullptr); EXPECT_TRUE(plugin.get() != nullptr); const auto& parser = std::dynamic_pointer_cast<TestConfigParserPlugin>(plugin); const auto& data = parser->getData(); EXPECT_EQ(data.count("list"), 1U); EXPECT_EQ(data.count("dictionary"), 1U); }
TEST_F(ConfigTests, test_get_parser) { auto& rf = RegistryFactory::get(); rf.registry("config_parser") ->add("test", std::make_shared<TestConfigParserPlugin>()); auto s = get().update(getTestConfigMap()); EXPECT_TRUE(s.ok()); EXPECT_EQ(s.toString(), "OK"); auto plugin = get().getParser("test"); EXPECT_TRUE(plugin != nullptr); EXPECT_TRUE(plugin.get() != nullptr); const auto& parser = std::dynamic_pointer_cast<TestConfigParserPlugin>(plugin); const auto& data = parser->getData(); EXPECT_EQ(data.count("list"), 1U); EXPECT_EQ(data.count("dictionary"), 1U); rf.registry("config_parser")->remove("test"); }