diff options
| author | Carl Hetherington <cth@carlh.net> | 2021-09-27 11:55:27 +0200 |
|---|---|---|
| committer | Carl Hetherington <cth@carlh.net> | 2021-09-27 11:55:27 +0200 |
| commit | 6e3e984162ca7a181bc7c98d90c295e88e4e7f6c (patch) | |
| tree | f514e6618e9012c307188a11a9d2a2ade2e04d19 /test | |
| parent | a3d4dfb4357a265d4c3a4bfafe7d17a8ecc72f66 (diff) | |
| parent | 0771af91ad52ed2e25ab89410eb6e783b50f7329 (diff) | |
Merge branch 'own-config' into v2.15.x
This makes 2.15.x copy the 2.14.x configuration so you can run 2.14.x
again afterwards without recreating everything.
Diffstat (limited to 'test')
| -rw-r--r-- | test/config_test.cc | 59 | ||||
| m--------- | test/data | 0 |
2 files changed, 40 insertions, 19 deletions
diff --git a/test/config_test.cc b/test/config_test.cc index d78b9357b..173c95cbf 100644 --- a/test/config_test.cc +++ b/test/config_test.cc @@ -32,11 +32,11 @@ static void rewrite_bad_config () { boost::system::error_code ec; - boost::filesystem::remove ("build/test/bad_config/config.xml", ec); + boost::filesystem::remove ("build/test/bad_config/2.16/config.xml", ec); Config::override_path = "build/test/bad_config"; - boost::filesystem::create_directories ("build/test/bad_config"); - ofstream f ("build/test/bad_config/config.xml"); + boost::filesystem::create_directories ("build/test/bad_config/2.16"); + ofstream f ("build/test/bad_config/2.16/config.xml"); f << "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n" << "<Config>\n" << "<Foo></Foo>\n" @@ -57,37 +57,37 @@ BOOST_AUTO_TEST_CASE (config_backup_test) Config::instance(); - BOOST_CHECK ( boost::filesystem::exists ("build/test/bad_config/config.xml.1")); - BOOST_CHECK (!boost::filesystem::exists ("build/test/bad_config/config.xml.2")); - BOOST_CHECK (!boost::filesystem::exists ("build/test/bad_config/config.xml.3")); - BOOST_CHECK (!boost::filesystem::exists ("build/test/bad_config/config.xml.4")); + BOOST_CHECK ( boost::filesystem::exists("build/test/bad_config/2.16/config.xml.1")); + BOOST_CHECK (!boost::filesystem::exists("build/test/bad_config/2.16/config.xml.2")); + BOOST_CHECK (!boost::filesystem::exists("build/test/bad_config/2.16/config.xml.3")); + BOOST_CHECK (!boost::filesystem::exists("build/test/bad_config/2.16/config.xml.4")); Config::drop(); rewrite_bad_config(); Config::instance(); - BOOST_CHECK ( boost::filesystem::exists ("build/test/bad_config/config.xml.1")); - BOOST_CHECK ( boost::filesystem::exists ("build/test/bad_config/config.xml.2")); - BOOST_CHECK (!boost::filesystem::exists ("build/test/bad_config/config.xml.3")); - BOOST_CHECK (!boost::filesystem::exists ("build/test/bad_config/config.xml.4")); + BOOST_CHECK ( boost::filesystem::exists("build/test/bad_config/2.16/config.xml.1")); + BOOST_CHECK ( boost::filesystem::exists("build/test/bad_config/2.16/config.xml.2")); + BOOST_CHECK (!boost::filesystem::exists("build/test/bad_config/2.16/config.xml.3")); + BOOST_CHECK (!boost::filesystem::exists("build/test/bad_config/2.16/config.xml.4")); Config::drop(); rewrite_bad_config(); Config::instance(); - BOOST_CHECK ( boost::filesystem::exists ("build/test/bad_config/config.xml.1")); - BOOST_CHECK ( boost::filesystem::exists ("build/test/bad_config/config.xml.2")); - BOOST_CHECK ( boost::filesystem::exists ("build/test/bad_config/config.xml.3")); - BOOST_CHECK (!boost::filesystem::exists ("build/test/bad_config/config.xml.4")); + BOOST_CHECK ( boost::filesystem::exists("build/test/bad_config/2.16/config.xml.1")); + BOOST_CHECK ( boost::filesystem::exists("build/test/bad_config/2.16/config.xml.2")); + BOOST_CHECK ( boost::filesystem::exists("build/test/bad_config/2.16/config.xml.3")); + BOOST_CHECK (!boost::filesystem::exists("build/test/bad_config/2.16/config.xml.4")); Config::drop(); rewrite_bad_config(); Config::instance(); - BOOST_CHECK (boost::filesystem::exists ("build/test/bad_config/config.xml.1")); - BOOST_CHECK (boost::filesystem::exists ("build/test/bad_config/config.xml.2")); - BOOST_CHECK (boost::filesystem::exists ("build/test/bad_config/config.xml.3")); - BOOST_CHECK (boost::filesystem::exists ("build/test/bad_config/config.xml.4")); + BOOST_CHECK (boost::filesystem::exists("build/test/bad_config/2.16/config.xml.1")); + BOOST_CHECK (boost::filesystem::exists("build/test/bad_config/2.16/config.xml.2")); + BOOST_CHECK (boost::filesystem::exists("build/test/bad_config/2.16/config.xml.3")); + BOOST_CHECK (boost::filesystem::exists("build/test/bad_config/2.16/config.xml.4")); /* This test has called Config::set_defaults(), so take us back to the config that we want for our tests. @@ -112,3 +112,24 @@ BOOST_AUTO_TEST_CASE (config_write_utf8_test) setup_test_config (); } + +BOOST_AUTO_TEST_CASE (config_upgrade_test) +{ + boost::filesystem::path dir = "build/test/config_upgrade_test"; + Config::override_path = dir; + Config::drop (); + boost::filesystem::remove_all (dir); + boost::filesystem::create_directories (dir); + + boost::filesystem::copy_file ("test/data/2.14.config.xml", dir / "config.xml"); + boost::filesystem::copy_file ("test/data/2.14.cinemas.xml", dir / "cinemas.xml"); + Config::instance(); + Config::instance()->write(); + + check_xml (dir / "config.xml", "test/data/2.14.config.xml", {}); + check_xml (dir / "cinemas.xml", "test/data/2.14.cinemas.xml", {}); + check_xml (dir / "2.16" / "config.xml", "test/data/2.16.config.xml", {}); + /* cinemas.xml is not copied into 2.16 as its format has not changed */ + BOOST_REQUIRE (!boost::filesystem::exists(dir / "2.16" / "cinemas.xml")); +} + diff --git a/test/data b/test/data -Subproject d8d9a1eedc24b5f67f377b6e87e649cdee6fc3b +Subproject 56b37afdf96ecc83752ce70af061ee6c7ed4f78 |
