diff --git a/src/tests/config.cpp b/src/tests/config.cpp index 24776a7437a5d9d61f390b28e41d4d99a8029649..a53fc11f0cd99f502d1823648bd60ee306a94261 100644 --- a/src/tests/config.cpp +++ b/src/tests/config.cpp @@ -26,6 +26,7 @@ class ConfigTest : public CPPUNIT_NS :: TestFixture{ CPPUNIT_TEST_SUITE(ConfigTest); CPPUNIT_TEST(setStringTwice); CPPUNIT_TEST(updateBackendConfig); + CPPUNIT_TEST(updateBackendConfigJIDEscaping); CPPUNIT_TEST(unregisteredList); CPPUNIT_TEST(unregisteredString); CPPUNIT_TEST(unregisteredListAsString); @@ -57,6 +58,16 @@ class ConfigTest : public CPPUNIT_NS :: TestFixture{ CPPUNIT_ASSERT_EQUAL(false, CONFIG_BOOL(&cfg, "registration.needPassword")); } + void updateBackendConfigJIDEscaping() { + Config cfg; + std::istringstream ifs("service.jids = irc.freenode.org\n"); + cfg.load(ifs); + CPPUNIT_ASSERT_EQUAL(true, CONFIG_BOOL(&cfg, "service.jid_escaping")); + + cfg.updateBackendConfig("[features]\ndisable_jid_escaping=1\n"); + CPPUNIT_ASSERT_EQUAL(false, CONFIG_BOOL(&cfg, "service.jid_escaping")); + } + void unregisteredList() { Config cfg; std::istringstream ifs("service.irc_server = irc.freenode.org\nservice.irc_server=localhost\n");