diff --git a/pacman_mirrors/configfn.py b/pacman_mirrors/configfn.py index a941a9676316ca99ff0caa970849ce5954085863..619d90995565b87784b39b3f44766c80797f6971 100644 --- a/pacman_mirrors/configfn.py +++ b/pacman_mirrors/configfn.py @@ -20,21 +20,20 @@ """Pacman-Mirrors Configuration Functions""" from . import txt -from .configuration import CONFIG_FILE, MIRROR_DIR, MIRROR_FILE, MIRROR_LIST +from .configuration import MIRROR_DIR, MIRROR_FILE, MIRROR_LIST class ConfigFn: """Configuration Functions""" @staticmethod - def build_config(): + def build_config(configfile): """Get config informations""" # initialising defaults # information which can differ from these defaults # is fetched from config file config = { "branch": "stable", - "config_file": CONFIG_FILE, "method": "rank", "mirror_dir": MIRROR_DIR, "mirror_file": MIRROR_FILE, @@ -44,7 +43,7 @@ class ConfigFn: } try: # read configuration from file - with open(config["config_file"]) as conf: + with open(configfile) as conf: for line in conf: line = line.strip() if line.startswith("#") or "=" not in line: diff --git a/pacman_mirrors/pacman_mirrors.py b/pacman_mirrors/pacman_mirrors.py index 6487b1dbe5f8bdea2468dcc5718bf3f05854e45f..ff2d7b4a3675e255c58a218d45d2e77be2bc413d 100644 --- a/pacman_mirrors/pacman_mirrors.py +++ b/pacman_mirrors/pacman_mirrors.py @@ -32,7 +32,7 @@ from pacman_mirrors import __version__ from random import shuffle # CHANGE CONTENT IN configuration from .configuration import DEVELOPMENT, DESCRIPTION -from .configuration import CUSTOM_FILE, MIRROR_DIR +from .configuration import CONFIG_FILE, CUSTOM_FILE, MIRROR_DIR from .configfn import ConfigFn from .custom_help_formatter import CustomHelpFormatter from .customfn import CustomFn @@ -60,7 +60,7 @@ class PacmanMirrors: def __init__(self): """Init""" - self.config = {} + self.configfile = CONFIG_FILE self.custom = False self.fasttrack = None self.geoip = False @@ -310,7 +310,6 @@ class PacmanMirrors: def load_all_mirrors(self): """Load mirrors""" - MiscFn.debug("ENTER: load_all_mirrors", "config['only_country']", self.config["only_country"]) if self.config["only_country"] == ["all"]: self.disable_custom_config() @@ -376,7 +375,7 @@ class PacmanMirrors: def run(self): """Run""" FileFn.dir_must_exist(MIRROR_DIR) - self.config = ConfigFn.build_config() + self.config = ConfigFn.build_config(self.configfile) self.command_line_parse() self.network = HttpFn.update_mirrors() self.load_all_mirrors() diff --git a/tests/test_command_line_parse.py b/tests/test_command_line_parse.py index 5144404bd6377aa6cb729ecbdf85b67b2c99df67..5e0da2bc91d32a06588c204cc7923ddc7363ff92 100644 --- a/tests/test_command_line_parse.py +++ b/tests/test_command_line_parse.py @@ -28,6 +28,7 @@ class TestCommandLineParse(unittest.TestCase): ["pacman-mirrors", "-b", "unstable"]): app = PacmanMirrors() + app.configfile = "conf/pacman-mirrors.conf" app.config = ConfigFn.build_config() app.command_line_parse() assert app.config["branch"] == "unstable" @@ -40,6 +41,7 @@ class TestCommandLineParse(unittest.TestCase): ["pacman-mirrors", "-b", "testing"]): app = PacmanMirrors() + app.configfile = "conf/pacman-mirrors.conf" app.config = ConfigFn.build_config() app.command_line_parse() assert app.config["branch"] == "testing" @@ -52,6 +54,7 @@ class TestCommandLineParse(unittest.TestCase): ["pacman-mirrors", "-m", "random"]): app = PacmanMirrors() + app.configfile = "conf/pacman-mirrors.conf" app.config = ConfigFn.build_config() app.command_line_parse() assert app.config["method"] == "random" @@ -64,6 +67,7 @@ class TestCommandLineParse(unittest.TestCase): ["pacman-mirrors", "-d", "/another/dir/"]): app = PacmanMirrors() + app.configfile = "conf/pacman-mirrors.conf" app.config = ConfigFn.build_config() app.command_line_parse() assert app.config["mirror_dir"] == "/another/dir/" @@ -76,6 +80,7 @@ class TestCommandLineParse(unittest.TestCase): ["pacman-mirrors", "-o", "/another/list"]): app = PacmanMirrors() + app.configfile = "conf/pacman-mirrors.conf" app.config = ConfigFn.build_config() app.command_line_parse() assert app.config["mirror_list"] == "/another/list" @@ -88,6 +93,7 @@ class TestCommandLineParse(unittest.TestCase): ["pacman-mirrors", "-c", "France,Germany"]): app = PacmanMirrors() + app.configfile = "conf/pacman-mirrors.conf" app.config = ConfigFn.build_config() app.command_line_parse() assert app.config["only_country"] == ["France", "Germany"] @@ -100,6 +106,7 @@ class TestCommandLineParse(unittest.TestCase): ["pacman-mirrors", "-c Denmark"]): app = PacmanMirrors() + app.configfile = "conf/pacman-mirrors.conf" app.config = ConfigFn.build_config() app.command_line_parse() assert app.custom is True @@ -112,6 +119,7 @@ class TestCommandLineParse(unittest.TestCase): ["pacman-mirrors", "--geoip"]): app = PacmanMirrors() + app.configfile = "conf/pacman-mirrors.conf" app.config = ConfigFn.build_config() app.command_line_parse() assert app.geoip is True @@ -124,6 +132,7 @@ class TestCommandLineParse(unittest.TestCase): ["pacman-mirrors", "-f 5"]): app = PacmanMirrors() + app.configfile = "conf/pacman-mirrors.conf" app.config = ConfigFn.build_config() app.command_line_parse() assert app.fasttrack == 5 @@ -136,6 +145,7 @@ class TestCommandLineParse(unittest.TestCase): ["pacman-mirrors", "-i"]): app = PacmanMirrors() + app.configfile = "conf/pacman-mirrors.conf" app.config = ConfigFn.build_config() app.command_line_parse() assert app.interactive is True @@ -148,6 +158,7 @@ class TestCommandLineParse(unittest.TestCase): ["pacman-mirrors", "-t 5"]): app = PacmanMirrors() + app.configfile = "conf/pacman-mirrors.conf" app.config = ConfigFn.build_config() app.command_line_parse() assert app.max_wait_time == 5 @@ -160,6 +171,7 @@ class TestCommandLineParse(unittest.TestCase): ["pacman-mirrors", "-q"]): app = PacmanMirrors() + app.configfile = "conf/pacman-mirrors.conf" app.config = ConfigFn.build_config() app.command_line_parse() assert app.quiet is True diff --git a/tests/test_default_config.py b/tests/test_default_config.py index 4e2ab4d35341a9cdcce2a270d6760a8a23b5ee84..8a7e60b4946e7dbd9f07fd68332eab6364c3daea 100644 --- a/tests/test_default_config.py +++ b/tests/test_default_config.py @@ -28,6 +28,7 @@ class TestDefaultConfig(unittest.TestCase): ["pacman-mirrors", "-g"]): app = PacmanMirrors() + app.configfile = "conf/pacman-mirrors.conf" app.config = ConfigFn.build_config() assert app.config["branch"] == "stable" @@ -39,6 +40,7 @@ class TestDefaultConfig(unittest.TestCase): ["pacman-mirrors", "-g"]): app = PacmanMirrors() + app.configfile = "conf/pacman-mirrors.conf" app.config = ConfigFn.build_config() assert app.config["method"] == "rank" @@ -50,6 +52,7 @@ class TestDefaultConfig(unittest.TestCase): ["pacman-mirrors", "-g"]): app = PacmanMirrors() + app.configfile = "conf/pacman-mirrors.conf" app.config = ConfigFn.build_config() assert app.config["mirror_dir"] == "mock/var/" @@ -61,6 +64,7 @@ class TestDefaultConfig(unittest.TestCase): ["pacman-mirrors", "-g"]): app = PacmanMirrors() + app.configfile = "conf/pacman-mirrors.conf" app.config = ConfigFn.build_config() assert app.config["mirror_file"] == "mock/var/mirrors.json" @@ -72,6 +76,7 @@ class TestDefaultConfig(unittest.TestCase): ["pacman-mirrors", "-g"]): app = PacmanMirrors() + app.configfile = "conf/pacman-mirrors.conf" app.config = ConfigFn.build_config() assert app.config["mirror_list"] == "mock/etc/mirrorlist" @@ -83,6 +88,7 @@ class TestDefaultConfig(unittest.TestCase): ["pacman-mirrors", "-g"]): app = PacmanMirrors() + app.configfile = "conf/pacman-mirrors.conf" app.config = ConfigFn.build_config() assert app.config["no_update"] is False diff --git a/tests/test_httpfn.py b/tests/test_httpfn.py index 7d94273629492ee664d2de19d6c820a4e2cbea68..088941f710d2a38594eff0ab72b343b3d05d3c1f 100644 --- a/tests/test_httpfn.py +++ b/tests/test_httpfn.py @@ -31,6 +31,7 @@ class TestHttpFn(unittest.TestCase): ["pacman-mirrors", "--geoip"]): app = PacmanMirrors() + app.configfile = "conf/pacman-mirrors.conf" app.config = ConfigFn.build_config() app.command_line_parse() app.load_all_mirrors() @@ -47,6 +48,7 @@ class TestHttpFn(unittest.TestCase): "-g", "--geoip"]): app = PacmanMirrors() + app.configfile = "conf/pacman-mirrors.conf" app.config = ConfigFn.build_config() app.command_line_parse() app.load_all_mirrors() diff --git a/tests/test_inital_values.py b/tests/test_inital_values.py index 0806f23557e30bd4ee045fbf3572f98599fdc03c..70cffb621e8d9b3d4441cd4d04f63ba3b5c2df83 100644 --- a/tests/test_inital_values.py +++ b/tests/test_inital_values.py @@ -27,6 +27,7 @@ class TestInitialValues(unittest.TestCase): ["pacman-mirrors", "-g"]): app = PacmanMirrors() + app.configfile = "conf/pacman-mirrors.conf" assert app.custom is False @patch("os.getuid") @@ -37,6 +38,7 @@ class TestInitialValues(unittest.TestCase): ["pacman-mirrors", "-g"]): app = PacmanMirrors() + app.configfile = "conf/pacman-mirrors.conf" assert app.fasttrack is None @patch("os.getuid") @@ -47,6 +49,7 @@ class TestInitialValues(unittest.TestCase): ["pacman-mirrors", "-g"]): app = PacmanMirrors() + app.configfile = "conf/pacman-mirrors.conf" assert app.geoip is False @patch("os.getuid") @@ -57,6 +60,7 @@ class TestInitialValues(unittest.TestCase): ["pacman-mirrors", "-g"]): app = PacmanMirrors() + app.configfile = "conf/pacman-mirrors.conf" assert app.interactive is False @patch("os.getuid") @@ -67,6 +71,7 @@ class TestInitialValues(unittest.TestCase): ["pacman-mirrors", "-g"]): app = PacmanMirrors() + app.configfile = "conf/pacman-mirrors.conf" assert app.max_wait_time == 2 @patch("os.getuid") @@ -77,6 +82,7 @@ class TestInitialValues(unittest.TestCase): ["pacman-mirrors", "-g"]): app = PacmanMirrors() + app.configfile = "conf/pacman-mirrors.conf" assert app.network is True @patch("os.getuid") @@ -87,6 +93,7 @@ class TestInitialValues(unittest.TestCase): ["pacman-mirrors", "-g"]): app = PacmanMirrors() + app.configfile = "conf/pacman-mirrors.conf" assert app.no_display is False @patch("os.getuid") @@ -97,6 +104,7 @@ class TestInitialValues(unittest.TestCase): ["pacman-mirrors", "-g"]): app = PacmanMirrors() + app.configfile = "conf/pacman-mirrors.conf" assert app.quiet is False @patch("os.getuid") @@ -107,6 +115,7 @@ class TestInitialValues(unittest.TestCase): ["pacman-mirrors", "-g"]): app = PacmanMirrors() + app.configfile = "conf/pacman-mirrors.conf" assert app.selected_countries == [] def tearDown(self): diff --git a/tests/test_pacman_mirrors.py b/tests/test_pacman_mirrors.py index a598452feabd9fbcbbfded395d37c42a651fbe92..6048d95f5e115f3e756cc2bbe81ecf4a14df1fe6 100644 --- a/tests/test_pacman_mirrors.py +++ b/tests/test_pacman_mirrors.py @@ -31,6 +31,7 @@ class TestPacmanMirrors(unittest.TestCase): "-qc", "all", "-m", "random"]): app = PacmanMirrors() + app.configfile = "conf/pacman-mirrors.conf" app.config = ConfigFn.build_config() app.command_line_parse() FileFn.dir_must_exist(app.config["mirror_dir"])