diff --git a/tests/libdnf/conf/ConfigParserTest.cpp b/tests/libdnf/conf/ConfigParserTest.cpp index 70278196c..1448d8d36 100644 --- a/tests/libdnf/conf/ConfigParserTest.cpp +++ b/tests/libdnf/conf/ConfigParserTest.cpp @@ -30,4 +30,21 @@ void ConfigParserTest::testConfigParserReleasever() libdnf::ConfigParser::substitute(text, substitutions); CPPUNIT_ASSERT(text == "major: , minor: "); } + { + std::map substitutions = { + {"var1", "value123"}, + {"var2", "456"}, + }; + std::string text = "foo$var1-bar"; + libdnf::ConfigParser::substitute(text, substitutions); + CPPUNIT_ASSERT(text == "foovalue123-bar"); + + text = "${var1:+alternate}-${unset:-default}-${nn:+n${nn:-${nnn:}"; + libdnf::ConfigParser::substitute(text, substitutions); + CPPUNIT_ASSERT(text == "alternate-default-${nn:+n${nn:-${nnn:}"); + + text = "${unset:-${var1:+${var2:+$var2}}}"; + libdnf::ConfigParser::substitute(text, substitutions); + CPPUNIT_ASSERT(text == "456"); + } }