46 lines
1.5 KiB
Python
46 lines
1.5 KiB
Python
from unittest.mock import (
|
|
patch, Mock
|
|
)
|
|
from pytest import raises
|
|
|
|
from kiwi.solver.repository import SolverRepository
|
|
|
|
from kiwi.exceptions import KiwiSolverRepositorySetupError
|
|
|
|
|
|
class TestSolverRepository:
|
|
def setup(self):
|
|
self.uri = Mock()
|
|
self.uri.repo_type = 'some-unknown-type'
|
|
|
|
def setup_method(self, cls):
|
|
self.setup()
|
|
|
|
def test_solver_repository_type_not_implemented(self):
|
|
with raises(KiwiSolverRepositorySetupError):
|
|
SolverRepository.new(self.uri)
|
|
|
|
@patch('kiwi.solver.repository.suse.SolverRepositorySUSE')
|
|
def test_solver_repository_suse(self, mock_suse):
|
|
self.uri.repo_type = 'yast2'
|
|
SolverRepository.new(self.uri)
|
|
mock_suse.assert_called_once_with(self.uri, None, None)
|
|
|
|
@patch('kiwi.solver.repository.rpm_md.SolverRepositoryRpmMd')
|
|
def test_solver_repository_rpm_md(self, mock_rpm_md):
|
|
self.uri.repo_type = 'rpm-md'
|
|
SolverRepository.new(self.uri)
|
|
mock_rpm_md.assert_called_once_with(self.uri, None, None)
|
|
|
|
@patch('kiwi.solver.repository.rpm_dir.SolverRepositoryRpmDir')
|
|
def test_solver_repository_rpm_dir(self, mock_rpm_dir):
|
|
self.uri.repo_type = 'rpm-dir'
|
|
SolverRepository.new(self.uri)
|
|
mock_rpm_dir.assert_called_once_with(self.uri, None, None)
|
|
|
|
@patch('kiwi.solver.repository.deb.SolverRepositoryDeb')
|
|
def test_solver_repository_apt(self, mock_deb):
|
|
self.uri.repo_type = 'apt-deb'
|
|
SolverRepository.new(self.uri)
|
|
mock_deb.assert_called_once_with(self.uri, None, None)
|