Newer
Older
"""
test_pacman-mirrors
----------------------------------
Tests for `pacman-mirrors` module.
"""
from pacman_mirrors import configfn
from pacman_mirrors import filefn
from pacman_mirrors import httpfn
from . import mock_configuration as conf
class TestPacmanMirrors(unittest.TestCase):
"""Pacman Mirrors Test suite"""
def setUp(self):
def test_full_run_random(self, mock_build_config, mock_os_getuid):
"""TEST: pacman-mirrors -c all -m random"""
# network check
app.network = httpfn.ping_host("google.com", 3)
# all methods is available
if app.network:
httpfn.update_mirrors(app.config)
# actual generation
if app.fasttrack:
app.build_fasttrack_mirror_list(app.fasttrack)
if app.interactive:
app.build_interactive_mirror_list()
else:
app.build_common_mirror_list()
@patch("os.getuid")
@patch.object(configfn, "build_config")
def test_full_run_fasttrack(self, mock_build_config, mock_os_getuid):
"""TEST: pacman-mirrors -f 5"""
mock_os_getuid.return_value = 0
with unittest.mock.patch("sys.argv",
["pacman-mirrors",
"-f", "5"]):
app = PacmanMirrors()
app.config = configfn.build_config()
app.command_line_parse()
app.load_all_mirrors()
# network check
app.network = httpfn.is_connected("https://manjaro.org", 2)
# all methods is available
if app.network:
httpfn.update_mirrors(app.config)
# actual generation
if app.fasttrack:
app.build_fasttrack_mirror_list(app.fasttrack)
else:
if app.interactive:
app.build_interactive_mirror_list()
else:
app.build_common_mirror_list()
@patch("os.getuid")
@patch.object(configfn, "build_config")
def test_full_run_rank(self, mock_build_config, mock_os_getuid):
"""TEST: pacman-mirrors -c all -m random"""
mock_os_getuid.return_value = 0
with unittest.mock.patch("sys.argv",
["pacman-mirrors",
"-c", "all"]):
app = PacmanMirrors()
app.config = configfn.build_config()
app.network = httpfn.is_connected("https://manjaro.org", 2)
# all methods is available
if app.network:
httpfn.update_mirrors(app.config)
# actual generation
if app.fasttrack:
app.build_fasttrack_mirror_list(app.fasttrack)
else:
if app.interactive:
app.build_interactive_mirror_list()
else:
app.build_common_mirror_list()