kiwi-el8/test/unit/package_manager/base_test.py
David Cassany 469f71144e
Clean AnonymousUniqueId from the image
This commit is two fold.

For one side does a small refactor to move the deletion of custom RPM
macros to package manager level inside a cleaning method. This way only
RPM based package managers run RPM specific code and each package manager
can apply its own specific logic.

On the other hand for the zypper package manager the deletion of
/var/lib/zypp/AnonymousUniqueId file has been added as part of the
new cleaning method.

Fixes #1396
2020-04-30 15:19:08 +02:00

89 lines
2.9 KiB
Python

import mock
from mock import patch
from pytest import raises
from kiwi.package_manager.base import PackageManagerBase
class TestPackageManagerBase:
def setup(self):
repository = mock.Mock()
repository.root_dir = 'root-dir'
self.manager = PackageManagerBase(repository)
def test_request_package(self):
with raises(NotImplementedError):
self.manager.request_package('name')
def test_request_collection(self):
with raises(NotImplementedError):
self.manager.request_collection('name')
def test_request_product(self):
with raises(NotImplementedError):
self.manager.request_product('name')
@patch.object(PackageManagerBase, 'request_package_exclusion')
def test_request_package_lock(self, mock_exclude):
self.manager.request_package_lock('name')
mock_exclude.assert_called_once_with('name')
def test_request_package_exclusion(self):
with raises(NotImplementedError):
self.manager.request_package_exclusion('name')
def test_process_install_requests_bootstrap(self):
with raises(NotImplementedError):
self.manager.process_install_requests_bootstrap()
def test_post_process_install_requests_bootstrap(self):
self.manager.post_process_install_requests_bootstrap()
def test_process_install_requests(self):
with raises(NotImplementedError):
self.manager.process_install_requests()
def test_process_delete_requests(self):
with raises(NotImplementedError):
self.manager.process_delete_requests()
def test_update(self):
with raises(NotImplementedError):
self.manager.update()
def test_process_only_required(self):
with raises(NotImplementedError):
self.manager.process_only_required()
def test_process_plus_recommended(self):
with raises(NotImplementedError):
self.manager.process_plus_recommended()
def test_match_package_installed(self):
with raises(NotImplementedError):
self.manager.match_package_installed('package_name', 'log')
def test_match_package_deleted(self):
with raises(NotImplementedError):
self.manager.match_package_deleted('package_name', 'log')
def test_database_consistent(self):
self.manager.database_consistent()
def test_dump_reload_package_database(self):
self.manager.dump_reload_package_database()
def test_has_failed(self):
assert self.manager.has_failed(0) is False
assert self.manager.has_failed(1) is True
def test_cleanup_requests(self):
self.manager.cleanup_requests()
assert self.manager.package_requests == []
assert self.manager.product_requests == []
assert self.manager.collection_requests == []
assert self.manager.exclude_requests == []
def test_clean_leftovers(self):
self.manager.clean_leftovers()