Newer
Older
#!/usr/bin/env python
"""
test_pacman-mirrors
----------------------------------
Tests for `pacman-mirrors` module.
"""
import unittest
from unittest.mock import patch
from pacman_mirrors.pacman_mirrors import PacmanMirrors
from pacman_mirrors.configfn import ConfigFn
class TestCommandLineParse(unittest.TestCase):
"""Pacman Mirrors Test suite"""
def setUp(self):
"""Setup tests"""
pass
@patch("os.getuid")
"""TEST: config[branch] from arg -b unstable"""
mock_os_getuid.return_value = 0
with unittest.mock.patch("sys.argv",
["pacman-mirrors",
"-b", "unstable"]):
app = PacmanMirrors()
app.config = ConfigFn.build_config()
app.command_line_parse()
assert app.config["branch"] == "unstable"
@patch("os.getuid")
"""TEST: config[branch] from arg -b testing"""
mock_os_getuid.return_value = 0
with unittest.mock.patch("sys.argv",
["pacman-mirrors",
"-b", "testing"]):
app = PacmanMirrors()
app.config = ConfigFn.build_config()
app.command_line_parse()
assert app.config["branch"] == "testing"
@patch("os.getuid")
"""TEST: config[method] from arg -m random"""
mock_os_getuid.return_value = 0
with unittest.mock.patch("sys.argv",
["pacman-mirrors",
"-m", "random"]):
app = PacmanMirrors()
app.config = ConfigFn.build_config()
app.command_line_parse()
assert app.config["method"] == "random"
@patch("os.getuid")
"""TEST: config[mirror_dir] from arg -d /another/dir"""
mock_os_getuid.return_value = 0
with unittest.mock.patch("sys.argv",
["pacman-mirrors",
"-d", "/another/dir/"]):
app = PacmanMirrors()
app.config = ConfigFn.build_config()
app.command_line_parse()
assert app.config["mirror_dir"] == "/another/dir/"
@patch("os.getuid")
"""TEST: config[mirror_list] from arg -o /another/list"""
mock_os_getuid.return_value = 0
with unittest.mock.patch("sys.argv",
["pacman-mirrors",
"-o", "/another/list"]):
app = PacmanMirrors()
app.config = ConfigFn.build_config()
app.command_line_parse()
assert app.config["mirror_list"] == "/another/list"
@patch("os.getuid")
"""TEST: config[only_country] from arg -c France,Germany"""
mock_os_getuid.return_value = 0
with unittest.mock.patch("sys.argv",
["pacman-mirrors",
"-c", "France,Germany"]):
app = PacmanMirrors()
app.config = ConfigFn.build_config()
app.command_line_parse()
assert app.config["only_country"] == ["France", "Germany"]
"""TEST: custom is True from arg -c Denmark"""
mock_os_getuid.return_value = 0
with unittest.mock.patch("sys.argv",
["pacman-mirrors",
"-c Denmark"]):
app = PacmanMirrors()
app.config = ConfigFn.build_config()
mock_os_getuid.return_value = 0
with unittest.mock.patch("sys.argv",
["pacman-mirrors",
"--geoip"]):
app = PacmanMirrors()
app.config = ConfigFn.build_config()
mock_os_getuid.return_value = 0
with unittest.mock.patch("sys.argv",
["pacman-mirrors",
app.config = ConfigFn.build_config()
"""TEST: interactive is true from arg -i"""
mock_os_getuid.return_value = 0
with unittest.mock.patch("sys.argv",
["pacman-mirrors",
app.config = ConfigFn.build_config()
app.command_line_parse()
assert app.interactive is True
@patch("os.getuid")
"""TEST: max_wait_time is 5 from arg -t 5"""
mock_os_getuid.return_value = 0
with unittest.mock.patch("sys.argv",
["pacman-mirrors",
"-t 5"]):
app = PacmanMirrors()
app.config = ConfigFn.build_config()
app.command_line_parse()
assert app.max_wait_time == 5
@patch("os.getuid")
"""TEST: quiet is True from arg -q"""
mock_os_getuid.return_value = 0
with unittest.mock.patch("sys.argv",
["pacman-mirrors",
"-q"]):
app = PacmanMirrors()
app.config = ConfigFn.build_config()