diff --git a/modoboa_installer/utils.py b/modoboa_installer/utils.py index 99540b1..2003534 100644 --- a/modoboa_installer/utils.py +++ b/modoboa_installer/utils.py @@ -354,7 +354,7 @@ def update_config(path, apply_update=True): dropped_sections = list(set(old_sections) - set(new_sections)) added_sections = list(set(new_sections) - set(old_sections)) - if len(dropped_sections) > 0 and not apply_update: + if len(dropped_sections) > 0 and apply_update: printcolor("Following section(s) will not be ported " "due to being deleted or renamed: " + ', '.join(dropped_sections), @@ -369,8 +369,8 @@ def update_config(path, apply_update=True): old_options = config.options(section) dropped_options = list(set(old_options) - set(new_options)) - added_options = list(set(new_options) - set(old_sections)) - if len(dropped_options) > 0 and not apply_update: + added_options = list(set(new_options) - set(old_options)) + if len(dropped_options) > 0 and apply_update: printcolor(f"Following option(s) from section: {section}, " "will not be ported due to being " "deleted or renamed: " + diff --git a/tests.py b/tests.py index 42ec1b7..d3e2579 100644 --- a/tests.py +++ b/tests.py @@ -18,6 +18,7 @@ try: except ImportError: from mock import patch +from modoboa_installer import utils import run @@ -81,15 +82,9 @@ class ConfigFileTestCase(unittest.TestCase): [dummy] weird_old_option = "hey """) - print("here") - print(os.path.isfile(cfgfile_temp)) - out = StringIO() sys.stdout = out - run.main([ - "--update-configfile", - "--configfile", cfgfile_temp, - "example.test"]) + utils.update_config(cfgfile_temp) self.assertIn("dummy", out.getvalue()) self.assertTrue(Path(self.workdir).glob("*.old")) @@ -128,6 +123,9 @@ class ConfigFileTestCase(unittest.TestCase): " postwhite spamassassin uwsgi", out.getvalue() ) + self.assertNotIn("It seems that your config file is outdated.", + out.getvalue() + ) @patch("modoboa_installer.utils.user_input") def test_upgrade_mode(self, mock_user_input):